Directories ¶ Show internal Expand all Path Synopsis ch01 01_hello ch02 01_complex_numbers 02_explicit_type_conversions 03_using_const ch03 01_arrays 02_slices 03_make 04_slicing_slices 05_converting_arrays_to_slices 06_copy_function 07_strings_runes_and_bytes 08_converting_strings_to_slices 09_maps 10_comma_ok 11_deleting_from_maps 12_using_maps_as_sets 13_structs 14_anonymous_structs 15_converting_and_comparing_structs 16_using_structs_as_sets ch04 01_shadowning_with_multiple_assignment 02_shadowing_package_names 03_scoping_a_variable_to_an_if_statement 04_for_four_ways 05_fizzbuzz 06_labeling_for_statements 07_switch_statement 08_blank_switches 09_goto ch05 01_intro_to_functions 02_simulating_named_and_optional_parameters 03_variadic_input_parameters_and_slices 04_multiple_return_values 05_named_return_values 06_blank_returns 07_functions_are_values 08_function_type_declarations 09_anonymous_functions 10_passing_functions_as_parameters 11_returning_functions_from_functions 12_defer 13_supplying_a_function_to_defer 14_named_returned_values_and_defer 15_clean_up_with_defer 16_Go_is_call_by_value ch06 02_passing_nil_pointer_to_a_function 03_copying_a_pointer_in_a_function ch07 01_methods 02_pointer_receivers_and_value_receivers 03_code_your_methods_for_nil_instances 04_methods_are_functions_too 05_iota_is_for_enumerations_sometimes 06_use_embedding_for_composition 07_embedding_is_not_inheritance 08_a_quick_lesson_on_interfaces 09_embedding_and_interfaces 10_interfaces_and_nil 11_the_empty_interface_says_nothing 12_type_assertions_and_type_switches 13_implicit_interfaces_make_dependency_injection_easier ch08 01_how_to_handle_errors_the_basics 02_using_strings_for_simple_errors 03_sentinel_errors 04_errors_are_values 05_wrapping_and_unwrapping_errors 06_the_is_function 07_panics 08_recover ch09 03_making_aliases ch10 0.01_deadlocking_goroutines 01_using_select_to_avoid_deadlock 02_goroutines_and_closures 03_always_clean_up_goroutines 04_using_a_cancel_function_to_terminate_a_goroutine 05.01_truning_off_a_case_in_select 05_backpressure 06_using_waitgroup ch11 01_working_with_io_reader 02_converting_time 03_json_readers_and_writers 04_encoding_and_decoding_json_streams 05_cusotm_JSON_parsing 06_the_client ch12 02_cancelling_parent_and_child_contexts ch14 01_types_and_kinds 02_values 03_making_new_values 04_use_reflection_to_check_if_an_interfaces_value_is_nil 06_build_functions_with_reflection_to_automate_repetetive_tasks 08_unsafe_strings_and_slices ch15 02_generic_functions_abstract_algorithms 03_generics_and_interfaces 04_use_type_terms_to_specify_operators Click to show internal directories. Click to hide internal directories.