Can not create fields in ACF with code

Action acf/init is available for pro version only, and I think you forgot to mention that you’re using the free version because with pro version above code worked fine.

For basic version you have to use acf/register_fields to register your custom fields.

So you need to modify your code to:

function af_barbershop_address_field() {
    if ( function_exists( "register_field_group" ) ) {
        register_field_group( array(
            'id'         => 'acf_address',
            'title'      => 'Address',
            'fields'     => array(
                array(
                    'key'           => 'field_address',
                    'label'         => 'address',
                    'name'          => 'address',
                    'type'          => 'textarea',
                    'required'      => 1,
                    'default_value' => '',
                    'placeholder'   => 'type the address',
                    'maxlength'     => '',
                    'rows'          => '',
                    'formatting'    => 'br',
                ),
            ),
            'location'   => array(
                array(
                    array(
                        'param'    => 'post_type',
                        'operator' => '==',
                        'value'    => 'barbershop',
                        'order_no' => 0,
                        'group_no' => 0,
                    ),
                ),
            ),
            'options'    => array(
                'position'       => 'normal',
                'layout'         => 'no_box',
                'hide_on_screen' => array(),
            ),
            'menu_order' => 0,
        ) );
    }
}

add_action( 'acf/register_fields', 'af_barbershop_address_field' );

This should work fine. This won’t work for Pro version, only earlier code would work. So you might even hook to both the actions so that in case you happen to upgrade in future the code still works.