Directories ¶ Show internal Expand all Path Synopsis 01_intro 01_basics/01_vars_1 command 01_basics/02_vars_2 command 01_basics/03_const command 01_basics/04_pointers command 01_basics/05_array command 01_basics/06_slice_1 command 01_basics/07_slice_2 command 01_basics/08_strings command 01_basics/09_map command 01_basics/10_control command 01_basics/11_loop command 01_basics/12_types command 02_functions/1_functions command 02_functions/2_firstclass command 02_functions/3_defer command 02_functions/4_recover command 03_structs/1_structs command 03_structs/2_methods command 04_interfaces/1.2_basic_sort command 04_interfaces/1_basic command 04_interfaces/2_many command 04_interfaces/3_embed command 04_interfaces/4_cast command 04_interfaces/5_empty_1 command 04_interfaces/6_empty_2 command 05_visibility command 05_visibility/person 06_uniq/basic command 06_uniq/with_tests command 99_hw/game command 02_async 0_basic_error_handling/1_ignore_errors command 0_basic_error_handling/2_panic command 0_basic_error_handling/3_handling command 1_async/10_timeout command 1_async/11_afterfunc command 1_async/12_context_cancel command 1_async/13_context_timeout command 1_async/14_atomic_1 command 1_async/14_atomic_2 command 1_async/15_race_1 command 1_async/15_race_2 command 1_async/15_race_3 command 1_async/16_ratelim command 1_async/1_goroutines command 1_async/2_chan_1 command 1_async/3_chan_2 command 1_async/4_select_1 command 1_async/5_select_2 command 1_async/5_select_2_new command 1_async/6_select_3 command 1_async/7_wait_1 command 1_async/8_wait_2 command 1_async/9_tick command 1_async/workerpool command 99_hw/spammer command 03_net1 1_net command 2_http/10_http command 2_http/11_pages command 2_http/12_servehttp command 2_http/13_mux command 2_http/14_servers command 2_http/20_get command 2_http/21_post command 2_http/22_cookies command 2_http/23_headers command 2_http/40_requests command 2_http/50_file_upload command 2_http/60_static command 3_testing command 5_json/1_json command 5_json/2_dynamic command 5_json/3_tags command 6_xml command 99_hw/coverage command 04_net2 01_template/1_inline command 01_template/2_file command 01_template/3_func command 01_template/4_method command 02_rest command 02_rest/storage 03_sessions command 04_api command 04_api/handlers 05_bot command 99_hw/taskbot command 05_web_app 1_middleware/1_decorator command 1_middleware/2_context_value command 1_middleware/3_middleware command 2_errors/1_basic command 2_errors/2_named command 2_errors/3_own command 2_errors/4_pkg command 3_routers/1_gorilla command 3_routers/2_httprouter command 3_routers/3_multiple command 3_routers/4_fasthttp command 4_validation command 5_logging command 8_websockets command 99_hw/jwt_example command 99_hw/redditclone/cmd/redditclone command 06_databases 01_mysql command 02_mysql_sql_injection command 03_gorm command 05_mongodb command 06_memcache command 07_redis_simple command 08_redis command 09_rabbit/form command 09_rabbit/resizer command 10_tarantool_simple command 11_tarantool command 99_hw/db command 07_sec 01_acl command 02_https command 03_passwords/01_pass command 03_passwords/02_salt command 04_xss/01_xss command 04_xss/02_xss_clean command 05_csrf/01_csrf command 05_csrf/02_csrf_token command 06_ssrf command 08_microservices 0_service/1_step command 0_service/2_step command 1_net-rpc/client command 1_net-rpc/server command 2_json-rpc/client command 2_json-rpc/server command 3_protobuf command 4_grpc/client command 4_grpc/server command 4_grpc/session 5_grpc_features/client command 5_grpc_features/server command 6_grpc_stream/client command 6_grpc_stream/server command 6_grpc_stream/translit 7_grpc_loadbalance/client command 7_grpc_loadbalance/server command 99_hw/microservice command 09_conf_monitoring 1_config/1.1_env command 1_config/1.2_dotenv command 1_config/1_flag command 1_config/2_json command 1_config/3_viper command 1_config/4_ldflags command 1_config/5_consul command 2_vault command 3_tracing/jaeger_grpc/client command 3_tracing/jaeger_grpc/server command 3_tracing/jaeger_grpc/session 4_monitoring/expvars command 4_monitoring/metrics command 4_monitoring/prometheus command 11_cgo_unsafe_k8s cgo/0_cgo command cgo/1_cgo_call_go command cgo/2_cgo_overhead command cgo/3_cgo_memleak command cgo/4_cgo_go_sleep command cgo/5_cgo_sleep command unsafe/0_byte_to_str command unsafe/1_unsafe command 12_reflect 1_json/1_json command 1_json/2_dynamic command 1_json/3_tags command 2_reflect/1_print command 2_reflect/2_unpack command 3_codegen/gen command 3_codegen/pack command 4_perfomance/6_json 5_testing command 6_pprof command 7_xml 8_inline_escape command 99_hw/optimization command 99_hw/reflection command common legacy/async_homework command tree-homework/99_hw/tree command Click to show internal directories. Click to hide internal directories.