Добавлен: 18.05.2023
Просмотров: 280
Скачиваний: 3
Часть функций языка выполняется быстрее по сравнению с другими подобными языками. Например, сортировка комплексных объектов выполняется в 3,9 раз быстрее, чем в Python, и почти в 1,5 раза быстрее, чем в Objective-C.
Код, написанный на Swift, может работать вместе с кодом, написанным на языках программирования C и Objective-C в рамках одного и того же проекта.
2.13 TypeScript
TypeScript — язык программирования, представленный Microsoft в 2012 году и позиционируемый как средство разработки веб-приложений, расширяющее возможности JavaScript.
Разработчиком языка TypeScript является Андерс Хейлсберг , создавший ранее Turbo Pascal, Delphi и C#.
Спецификации языка открыты и опубликованы в рамках соглашения Open Web Foundation Specification Agreement (OWFa 1.0).
TypeScript является обратно совместимым с JavaScript и компилируется в последний. Фактически, после компиляции программу на TypeScript можно выполнять в любом современном браузере или использовать совместно с серверной платформой Node.js. Код экспериментального компилятора, транслирующего TypeScript в JavaScript, распространяется под лицензией Apache. Его разработка ведётся в публичном репозитории через сервис GitHub.
TypeScript отличается от JavaScript возможностью явного статического назначения типов, поддержкой использования полноценных классов (как в традиционных объектно-ориентированных языках), а также поддержкой подключения модулей, что призвано повысить скорость разработки, облегчить читаемость, рефакторинг и повторное использования кода, помочь осуществлять поиск ошибок на этапе разработки и компиляции, и, возможно, ускорить выполнение программ.
ЗАКЛЮЧЕНИЕ
Можно провести неожиданные параллели между современными программистами и телеграфными операторами 19 века. По сегодняшним стандартам операторы были слабо технически подкованы – вся их работа состояла в получении и переправке сообщений, передающимся по проводам азбукой Морзе. Задача монотонная и требующая высокой концентрации. Сегодняшнее программирование требует наличия у человека достаточно широких познаний и понимания работы сложных систем, а также возможности быстро изучать и осваивать всё быстрее увеличивающееся количество разных фреймворков.
Однако в середин 19 века телеграфным операторам хорошо платили, их уважали и считали достаточно подкованными технически. Они легко переезжали с места на место, и опытные операторы слетались в крупные города в поисках хорошей работы. По мере укладки всё большего количества проводов, спрос на операторов быстро рос. Разрабатывались стандарты для ускорения передачи сообщений, и операторам приходилось подстраиваться, запоминать всё более сложные и эффективные системы сокращений и протоколов. Томас Эдисон в начале карьеры работал оператором телеграфа, до того, как последовать своему истинному призванию и начать скупать патенты, воровать идеи у Николы Теслы и строить империю. Неудивительно, что как и в случае с программированием, была большая разница в оплате труда мужчин и женщин.
Но к 20-му веку был изобретён телефон, не требовавший участия человека для преобразования кода в естественный язык. К 1920-м годам от большого числа операторов осталась лишь малая часть, по сравнению с 1890-ми.
Перенесёмся на сотню лет вперёд – и мы окажемся в схожей ситуации, только уже с программистами. Конечно, эта профессия требует больше навыков и интеллектуальных возможностей, чем у телеграфного оператора. Но программисты сегодня занимают функционально схожую с операторами нишу. Взрывное распространение софта похоже на распространение ранних видов коммуникаций 19-го века. Спрос на операторов рос пропорционально росту сетей, и спрос на программистов растёт пропорционально росту ПО. Раньше все телеграммы необходимо было транслировать с азбуки Морзе в человеческий язык, а сегодня весь код должен быть написан человеком.
Программы становятся более эффективными, появляются фреймворки, требующие написания меньшего количества кода, а более продвинутые языки, компиляторы и интерпретаторы облегчают жизнь программиста по сравнению с 1980-ми и 1990-ми годами. Но всё равно процесс написания программ остаётся занятием для человека.
Но всё это изменится. На сегодняшнюю версию профессии уже давят с двух сторон. Во-первых, инструменты для создания сайтов вроде Weebly позволяют каждому создавать сайт без необходимости писать код. Программирование базового уровня становится всё более доступным, поэтому разрыв между генерированием идей и их программированием постепенно исчезает.
Во-вторых, программы становятся всё полезнее в деле помощи создания новых программ. И хотя нам ещё далеко до автоматических программ, которые сами смогут писать другие программы, заменяя собою программиста – мы движемся к этому. И нам даже не понадобится настоящий ИИ, чтобы сильно уменьшить роль программиста. Просто роль программ в создании новых программ будет постепенно увеличиваться. По аналогии, представьте полуавтоматическое вождение автомобиля как первый шаг на пути к робомобилям.
И хотя в будущем сохранится нужда в программистах-специалистах узкого профиля и других людях, разбирающихся в компьютерах, кажется неизбежным, что программирование постепенно исчезнет как профессия на подходе к 22-му столетию.
Мое личное мнение, резюмируя выше сказанное:
ИИ можно научить многому, но должен быть кто-то, кто его этому научит. И это будут программисты. Ни один ИИ не сможет реализовать проект по agile с постоянно меняющимися требованиями, ни один ИИ не сможет подстраиваться под платформу и продумывать архитектуру.
Фреймворки растут, но вместе с тем растет и их сложность. Человека с улицы фреймворком не научишь пользоваться за 5 минут.
А что касается операторов телеграфа — они исчезли потому что люди предпочли телефоны и автоматизацию.
Умирают профессии, связанные с работой, на которой могут справиться роботы — это рабочие, таксисты, официанты, продавцы, парикмахеры, операторы — и т.д.
А вот профессии, связанные с исследованиями и разработкой — ученый, исследователь, инженер не умирают уже 1000 лет. Программист — это разновидность инженера, которая если и умрет то только тогда, когда человечество достигнет точки сингулярности прогресса и автоматизации. И это точно не случится в 2060 году. К 2060 году человечество с трудом сможет ИИ официанта воспроизвести, не говоря уж об ИИ программиста — вот увидите.
Вывод: пока ИИ не изобретен — программисты точно нужны, как минимум — делать ИИ. Когда ИИ будет изобретен — то люди вообще не нужны будут, не только программисты.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1) Родли Джон Создание Java-апплетов .- The Coriolis Group,Inc.,1996, Издательство НИПФ "ДиаСофт Лтд.",1996
2) Эферган Майкл Java: справочник .- QUE Corporation, 1997, Издательство "Питер Ком", 1998
3) Давидов Михаил Изгияевич; Антонов Вадим Геннадьевич “LEX - генератор программ лексического анализа” МОСКВА – 1985;
4) "BASIC Face-off", Justin J.Crom, PC Tech Journal, September 1987, 136 Перевод: ЛопуховВ.Н. (Интегратор Promt98);
5) Керниган Б.В., Ритчи Д., Фьюэр А. “Язык программирования Си.” Русский перевод: Москва: Финансы и Статистика. 1985 г.;
6) Золотарев В.В., “Основы автоматизации” ч.1, 1978 г.;
7) Ваулин А.С., “Языки программирования” кн.5, 1993 г.;
8) Терренс П. “Языки программирования: разработка и реализация”, 1979 г.;
9) Касвандс Э.Г “Введение в программирование на языке Ассемблер” ч.1;
10) Хротко Г., “Языки программирования высокого уровня”, 1982 г.;
11) Малютин Э.А., Малютина Л.В., “Языки программирования”, 1982 г.;
12) Ушкова В.“Новые языки программирования и тенденции их развития”, 1982 г.;
13) Хьювенен Э., Сеппенен Й., “Мир Лиспа” т.1, 1990 г.;