Я уже слышу от тебя: это ужасный код! :) Много дублирования, нет обработки ошибок и несколько других дурнопахнущих вещей. Но смысл этой статьи ни в объяснении стилистики кода, ни реализации шаблонов проектирования — это все про АРХИТЕКТУРУ приложения, поэтому код написан так, чтобы на его примере было проще объяснить и было проще читать эту статью.
И тут Ваш комментарий: Ю-ху-у-у-у!!! Я нашел дурнопахнущий код!!!
Спасибо, Вы отлично подметили про SQL-инъекции!
Если же говорить про то, что не показано:
1) Это следует из логики кода, например в админской панели, видимо использовался бы AdminOrderInteractor, в интерфейсе пользователя — OrderInteractor
2) Давайте поговорим об этом — что Вам осталось не ясно в этом аспекте?
Ответом на этот вопрос лично для меня является другой вопрос:
Хочешь ли ты быть крут за счет того, что умеешь на питоне извернуться так, что 90% других разработчиков этот код просто не поймут или ты хочешь быть крут потому, что разрабатываешь большой и клевый продукт которым будут пользоваться тысячи? Язык разработки — это большая, но все же часть продукта, который на выходе может быть плох или хорош, и определяется это не только тем, насколько удобно работать со слайсами.
consul, fleet, etcd — вот лишь малый список достойных вещей написанных на Go.
Складывается впечатление, что автор статьи не вполне понимает, что при всех достоинствах и недостатках Go — это все же нишевый язык. У компании в какой-то момент остро встал вопрос — где брать высококласных разработчиков в требуемых количествах? Пока тебе требуется 1-2-5 — это сложно, но реализуемо. Если тебе требуется тысяча — это практически неразрешимая задача. В итоге Google пошел альтернативным путем — разработал язык на которой можно быстро (пере)обучить человека с минимальным бэкграундом и при этом не дать возможности этому новообученному специалисту простора для выстреливания в ногу.
Если вы рассчитываете на проект, который будет писаться в течении 10-15 лет, то вы должны понимать, что команда может смениться и даже не раз и вам нужно, чтобы код был прост и понятен, чтобы в нем не было немыслимых заковырок, определяемых не реальной потребностью реализовать именно так, а скорее мотивацией «зырьте как я могу».
Понимание всего этого позволяет взглянуть на язык несколько под другим углом.
А покажите где такое было?
Из статьи:
И тут Ваш комментарий: Ю-ху-у-у-у!!! Я нашел дурнопахнущий код!!!
Спасибо, Вы отлично подметили про SQL-инъекции!
Если же говорить про то, что не показано:
1) Это следует из логики кода, например в админской панели, видимо использовался бы AdminOrderInteractor, в интерфейсе пользователя — OrderInteractor
2) Давайте поговорим об этом — что Вам осталось не ясно в этом аспекте?
Хочешь ли ты быть крут за счет того, что умеешь на питоне извернуться так, что 90% других разработчиков этот код просто не поймут или ты хочешь быть крут потому, что разрабатываешь большой и клевый продукт которым будут пользоваться тысячи? Язык разработки — это большая, но все же часть продукта, который на выходе может быть плох или хорош, и определяется это не только тем, насколько удобно работать со слайсами.
consul, fleet, etcd — вот лишь малый список достойных вещей написанных на Go.
Если вы рассчитываете на проект, который будет писаться в течении 10-15 лет, то вы должны понимать, что команда может смениться и даже не раз и вам нужно, чтобы код был прост и понятен, чтобы в нем не было немыслимых заковырок, определяемых не реальной потребностью реализовать именно так, а скорее мотивацией «зырьте как я могу».
Понимание всего этого позволяет взглянуть на язык несколько под другим углом.