Серьезно, этот if (err != nil) это просто лютейший визуальный мусор, неужели авторы не попробовали хоть что-то написать на своём языке прежде чем релизить...?
Top-level
Серьезно, этот if (err != nil) это просто лютейший визуальный мусор, неужели авторы не попробовали хоть что-то написать на своём языке прежде чем релизить...? 20 comments
@mo потому и написал про шоткат. Я этот err != nil пишу за деньги по сотне раз в день, не могу сказать что это вот болит прям. Принимаешь/привыкаешь и пишешь, а теперь ещё и копайлот помогает неплохо А я правильно понимаю, что в одной директории может быть только один голанговский package..? И при этом его имя совершенно не обязано совпадать с именем директории? И чтобы всё было логично разделено по неймспейсам без неявных проникновений между файлами, получается нужно каждый файл закидывать в свою директорию..? @mo Всё так. Одна директория - один package (он же неймспейс), но таки принято, чтобы он совпадал с именем директории. Вот названия файлов внутри у тебя могут ни с чем не совпадать. @SignPainter круто, то есть внутри package творится локализованная вакханалия уровня сишных include @mo не думаю, что оно там внутри что-то инклюдит. Скорее компилятор все файлы внутри package интерпретирует как один файл, который ты, жалкий человек, раскидал для своего удобства. @SignPainter да какая разница что там внутри, снаружи это так же удобно как сишные инклюды (сишные инклюды абсолютно не удобны) @mo я просто подумал, что ты спрашиваешь, создаёт ли куча разноимённых файлов внутри package какой-то оверхед. Насколько понимаю, не создают. @SignPainter они создают оверхед на того кто будет это читать, потому что вещи берутся в неймспейсе хз откуда, из какого-то файла, угадай @mo это зависит от того, кто и как будет делить на файлы) PS Go to definition - самая полезная фича этих ваших IDE :) @SignPainter очень полезная, но код иногда хочется просто бегло глянуть на гитхабе, а не грузить в IDE Ну окей, я написала какой-то экспортер. Выглядит даже не слишком как говно, а то что есть можно списать на, кхм, крайнюю несовершенность языка.
го это же вроде гугловский язык? делать всё так, чтобы оно плохо выглядело - это нынче в их стиле |
@mo к этой фигне привыкаешь быстро, а потом ещё и врапать начинаешь, что ещё шума добавляет, но шоткат не помешал бы. На самом деле подобный подход к обработке ошибок очень хорошо себя показывает в сильно конкурентных программах: ты точно видишь откуда может прилететь, а язык заставляет обработать или отправить выше. Асинхронный код на языке с исключениями больнее, потому что прилететь может откуда угодно, приходится городить try/catch и вообще к защитному программированию не располагает.