Я не знаю откуда в человеческой голове берется умение составлять алгоритмы для решения поставленной задачи. У меня это умение было всегда, и мне кажется люди, способные заниматься программированием и отличаются от всех прочих этим умением, которое либо есть, либо его нет. К джуниору-миддлу это не имеет никакого отношения.
В умении оптимально использовать существующие механизмы используемой среды разработки для реализации алгоритмической логики, конечно же. Я занимаюсь программированием 25 лет, последние 17 профессионально, но если я захочу изучить C# и пойти работать, то я буду таки джуниором.
Ну имеется ввиду не вэб-интерфейс с ограниченным набором элементов, а возможность принимать запросы по http и отдавать полноценный html… Я последние годы с 1С не работаю, если это реализовано, вобщем не удвилен. Вообще думаю, что тот системный подход, который они используют, рано или поздно выведет их на лидирующие позиции в мировой разработке.
Здесь не о чем спорить. Не у всех есть английские коллеги, которые анализируют ваш код и не у всех программные конструкции на русском противоречат вашему чувству языка. То что русский язык может использоваться в разработке говорит сверхуспешный опыт 1С, все остальное частности, привычки и т.д.
Во-первых я выразился фигурально, во вторых я все же считаю что отличие джуниора от миддла в опыте работы, а не в умении писать алгоритмы. Я думаю что если человек не может написать простейший парсер кода, отделив ключевые слова и языковые конструкции от переменных, то он и сеньором это сделать не сможет. Но к чему этот разговор? Достаточно одного гения на несчастную планету, чтобы написать этот сверхсложный парсер =)
Я просто удивился вопросу. Да, я могу написать алгоритм, который отличит ключевые слова и языковые конструкции от идентификаторов. И если бы по каким-то причинам я бы этого не смог, это смог бы сделать кто-то еще, создав один раз этот парсер-переводчик. Не понимаю в чем смысл вопроса…
Если имеется ввиду js, то это связано исключительно со спецификой истории развития языка. Какой смысл в слове let? Просто взяли что-то, знакомое по другим языкам, но отличающееся от var. Это просто локальный var, вы можете его перевести как угодно. Если вы переведете его как локал или лок, в нем будет больше смысла чем в let. Даже если перевод будет странным, вы очень быстро к этому привыкнете. Это все мелочи, которые мне кажется бессмысленно обсуждать. Если вы не хотите писать на русском — тогда вы во всем увидите проблему. Если же такое желание есть — то проблемы с переводом не станет.
Абсолютно так же, как для англоговорящих выглядит любой язык программирования.
но этот продукт вообще не имеет отношения к Web-разработке
Во-первых пока не имеет. 1С уже реализовывает вэб-сервисы и создание мобильных приложений. Могут и полноценный вэб-сервер сделать рано или поздно. А во вторых какая разница — вэб или не вэб? Методы написания языковых конструкций от этого не отличаются.
а изучать английский в ВУЗ-е нужно, вместе с ИТ-предметами, вот как я считаю. Конечно, это мой опыт, у вас свой.
Для чтения документаций недостаточно английского, нужен технический английский. Его проще изучить работая с программой, чем на курсах.
Точный, но неудачный. Я не готов читать «перем симвСчт».
А тысячи американцев и англичан не готовы читать var symbCnt, но они читают. Как и десятки тысяч разработчиков под 1С, которые читают Перем и не видят в этом никаких проблем.
Проблема в том, что даже если слово использовалось мной ранее, еще не факт, что перевод его в этом контексте будет совпадать.
Не думаю что это частая проблема, и даже не смог навскидку придумать русские слова в разработке, которые в рамках одного проекта будут иметь необходимость по разному их перевести( с аутсорсом ок, забудем про эту идею). В любом случае вы хозяин, переменных не так много и это не будет критично. В конце концов что, всегда во всех проектах переменные названы корректно? Нет.
Если вы прежде чем изучать программирование предлагаете идти на курсы английского языка — я не готов дискутировать на эту тему, как уже написал выше — подобное утверждение мне кажется большой и большой натяжкой.
По поводу «И не нужны вам никакие имена на кириллице и операторы, это будет вас только путать.» это ваше личное мнение и может не иметь никакого отношения к действительности. В моем случае — точно не имеет. Я писал на русском под 1С, я пишу последние три года на английском вэб-проекты. И русский код легко читается мною без комментариев, в то время как английский приходится сразу комментировать, чтобы легко воспринимать, при том, что я свободно разговариваю и читаю на английском.
Не вижу большой сложности создать инструмент, который будет переводить наработки с одного языка на другой.
А вы просто попробуйте.
И в чем же могут быть проблемы? Какие-то сложности выцепить из кода ключевые слова и названия идентификаторов и перевести их в соответствии со словарем? Это задача для тестового задания на позицию джуниора =)
Правда? Переведите ключевое слово let или var.
перем — точный перевод для var
какой-то словарь ru-en для названий функций и переменных создать не вижу проблемы…
На его поддержку уйдет больше сил, чем на написание программы.
Вы просто посчитайте, сколько новых, ранее не использованных в проекте слов, вы используете для именования переменных в задании, разработка которого занимает один день, вычтите из них те, которые какой-нибудь автоматический переводчик сможет перевести корректно, и то что останется — это даже не работа программиста, это работа аутсорсового копеечного переводчика. Локализация пользовательской части сайтов отнимает намного больше времени.
Если вы будете брать на работу Web-программистов, не знающих английского языка, они не смогут сделать ничего путного.
Это очень большое и ничем не оправданное преувеличение, тут бессмысленно дальше дискутировать. И опять же, вопрос не в создании нового языка. Речь лишь о переводе либо того, что сделал автор, либо любого существующего. В чем проблема компилятора или препроцессора помимо IF THEN и FUNCTION обрабатывать также ЕСЛИ, ТОГДА, ФУНКЦИЯ. Нет никакой проблемы, а имена на кириллице многие продукты Майкрософт к примеру позволяют писать сколько я себя помню… Разве что в С++ нельзя использовать кириллицу.
Здесь несколько моментов:
а) Я писал выше, что огромное количество программ не являются продуктами для массовой продажи вообще, не говоря уж о международном рынке, например разработка сайта или корпоративной системы для конкретной компании, которая останется только в компании и вообще может составлять коммерческую тайну. Это редкий случай? Нет
б) Я смогу использовать нерусскоязычные наработки. Это же просто код. Вы можете написать if, вы можете написать если, компилятор будет воспринимать и то и то. Также функции, вы можете оставить их на английском и вызывать в своем коде (например 1С так делает со сторонними библиотеками и проблемы нет), а можете перевести на русский, и здесь возникает следующий пункт…
в) Не вижу большой сложности создать инструмент, который будет переводить наработки с одного языка на другой. С ключевыми словами вообще проблем нет, а какой-то словарь ru-en для названий функций и переменных создать не вижу проблемы, например автоматический перевод с возможностью редактирования.
Нужно не уменьшать порог входа, а учить нормальным средствам проектирования программ.
Какое отношение язык имеет к нормальности-ненормальности средств проектирования? Добавление русского языка не делает 1С ни лучше ни хуже, оно делает его просто значительно более удобным для разработки. Когда делаются сайты, предполагающие посещение людьми из разных стран, используется глобализация, это удобно, я совершенно не понимаю, почему нельзя сделать глобализацию в средствах разработки.
В области разработки программ, считаю, вообще не имеет смысл говорить о российских масштабах. Эти разработки уже давно стали международными.
Есть огромное количество разработок, которые не просто не являются международными, но и вообще не выходят за пределы компании, для которой разрабатываются и составляют ее коммерческую тайну. На мой взгляд все утверждения о том, что писать программы нужно только на анлийском — это въевшийся стереотип. Как уже писал выше — глобализация подняла бы общий уровень разработки, потому что по своему опыту могу сказать, как человек, свободно разговаривающий на английском и поработавший как с 1С, так и с англоязычными средствами разработки — код на русском мозгом воспринимается значительно проще, хотя конечно по началу будет непривычно.
В мировом масштабе не имеют, в российском у 1с 90% рынка учетных программ не в последнюю очередь благодаря русскому синтаксису языка, уменьшающему порог входа и вообще облегчающему восприятие кода.
Здесь не о чем спорить. Не у всех есть английские коллеги, которые анализируют ваш код и не у всех программные конструкции на русском противоречат вашему чувству языка. То что русский язык может использоваться в разработке говорит сверхуспешный опыт 1С, все остальное частности, привычки и т.д.
Абсолютно так же, как для англоговорящих выглядит любой язык программирования.
Во-первых пока не имеет. 1С уже реализовывает вэб-сервисы и создание мобильных приложений. Могут и полноценный вэб-сервер сделать рано или поздно. А во вторых какая разница — вэб или не вэб? Методы написания языковых конструкций от этого не отличаются.
Для чтения документаций недостаточно английского, нужен технический английский. Его проще изучить работая с программой, чем на курсах.
А тысячи американцев и англичан не готовы читать var symbCnt, но они читают. Как и десятки тысяч разработчиков под 1С, которые читают Перем и не видят в этом никаких проблем.
Не думаю что это частая проблема, и даже не смог навскидку придумать русские слова в разработке, которые в рамках одного проекта будут иметь необходимость по разному их перевести( с аутсорсом ок, забудем про эту идею). В любом случае вы хозяин, переменных не так много и это не будет критично. В конце концов что, всегда во всех проектах переменные названы корректно? Нет.
По поводу «И не нужны вам никакие имена на кириллице и операторы, это будет вас только путать.» это ваше личное мнение и может не иметь никакого отношения к действительности. В моем случае — точно не имеет. Я писал на русском под 1С, я пишу последние три года на английском вэб-проекты. И русский код легко читается мною без комментариев, в то время как английский приходится сразу комментировать, чтобы легко воспринимать, при том, что я свободно разговариваю и читаю на английском.
И в чем же могут быть проблемы? Какие-то сложности выцепить из кода ключевые слова и названия идентификаторов и перевести их в соответствии со словарем? Это задача для тестового задания на позицию джуниора =)
перем — точный перевод для var
Вы просто посчитайте, сколько новых, ранее не использованных в проекте слов, вы используете для именования переменных в задании, разработка которого занимает один день, вычтите из них те, которые какой-нибудь автоматический переводчик сможет перевести корректно, и то что останется — это даже не работа программиста, это работа аутсорсового копеечного переводчика. Локализация пользовательской части сайтов отнимает намного больше времени.
habr.com/post/423713/#comment_19132551
Это очень большое и ничем не оправданное преувеличение, тут бессмысленно дальше дискутировать. И опять же, вопрос не в создании нового языка. Речь лишь о переводе либо того, что сделал автор, либо любого существующего. В чем проблема компилятора или препроцессора помимо IF THEN и FUNCTION обрабатывать также ЕСЛИ, ТОГДА, ФУНКЦИЯ. Нет никакой проблемы, а имена на кириллице многие продукты Майкрософт к примеру позволяют писать сколько я себя помню… Разве что в С++ нельзя использовать кириллицу.
а) Я писал выше, что огромное количество программ не являются продуктами для массовой продажи вообще, не говоря уж о международном рынке, например разработка сайта или корпоративной системы для конкретной компании, которая останется только в компании и вообще может составлять коммерческую тайну. Это редкий случай? Нет
б) Я смогу использовать нерусскоязычные наработки. Это же просто код. Вы можете написать if, вы можете написать если, компилятор будет воспринимать и то и то. Также функции, вы можете оставить их на английском и вызывать в своем коде (например 1С так делает со сторонними библиотеками и проблемы нет), а можете перевести на русский, и здесь возникает следующий пункт…
в) Не вижу большой сложности создать инструмент, который будет переводить наработки с одного языка на другой. С ключевыми словами вообще проблем нет, а какой-то словарь ru-en для названий функций и переменных создать не вижу проблемы, например автоматический перевод с возможностью редактирования.
Какое отношение язык имеет к нормальности-ненормальности средств проектирования? Добавление русского языка не делает 1С ни лучше ни хуже, оно делает его просто значительно более удобным для разработки. Когда делаются сайты, предполагающие посещение людьми из разных стран, используется глобализация, это удобно, я совершенно не понимаю, почему нельзя сделать глобализацию в средствах разработки.
Есть огромное количество разработок, которые не просто не являются международными, но и вообще не выходят за пределы компании, для которой разрабатываются и составляют ее коммерческую тайну. На мой взгляд все утверждения о том, что писать программы нужно только на анлийском — это въевшийся стереотип. Как уже писал выше — глобализация подняла бы общий уровень разработки, потому что по своему опыту могу сказать, как человек, свободно разговаривающий на английском и поработавший как с 1С, так и с англоязычными средствами разработки — код на русском мозгом воспринимается значительно проще, хотя конечно по началу будет непривычно.
Это же форум русских разработчиков? Или о ком вы еще переживаете?
Скобочно стрелочный вид не так интересен, фишка же вашего проекта в том что вы хотите бейсик сделать
В мировом масштабе не имеют, в российском у 1с 90% рынка учетных программ не в последнюю очередь благодаря русскому синтаксису языка, уменьшающему порог входа и вообще облегчающему восприятие кода.