View
182
Download
7
Category
Preview:
Citation preview
На каких языках говорят программисты
Анна Тарасенко,7bits, генеральный директор
О себе• Умею читать и писать с 1979 года• Программирую с 1989 года• Преподаю программирование с 1999
года• Занимаюсь заказной разработкой ПО с
2009 года• Планы на 2019 год в процессе
Вопрос
Какой язык знать важнее всего?
Ответ в конце
Каков язык компьютера?
•Электрические сигналы•Биты и байты•Машинные коды
Каков язык компьютера?
Для научных расчетов и вычислений по военным заказам
этого хватало.
Проблемы• Легко допустить ошибку• Слишком низкий уровень
абстракции• Сложно оперировать чем-то, кроме
чисел и булевых значений• Данные не отличить от команд
Первые языки• Ассемблер – команды записываются
сокращенными словами• Fortran, COBOL, Algol – прародители
императивных языков• Lisp, APL, ML – прародители
функциональных языков• Simula, SmallTalk – прародители ООП
Дальнейшее развитие
• Prolog – логический язык, попытки доказательства правильности средствами математики• С – один «долгожителей», на нем
пишут операционные системы, СУБД
Дальнейшее развитие• C++ – мультипарадигменный язык,
можно писать в любом стиле, прижился в играх с графикой• Java – соединение ООП и виртуальной
машины для переносимости• C# – развитие и улучшение идей C++ и
Java от MicroSoft
Скриптовые языки• PHP – популярность обусловлена
Internet• Perl – создан для обработки строк, но
был очень популярен на заре Internet• Python – популярен в системном
администрировании и расчетах
Скриптовые языки• Ruby – получил популярность
благодаря Ruby on Rails• JavaScript – стал стандартом для
разработки в браузере, теперь и на серверах• Erlang – вышел из Телекома, основан
на модели акторов
Тысячи их!• Go – разрабатывается компанией
Google для замены C• Rust – разрабатывается компанией
Mozilla для разработки браузеров• Kotlin – язык от JetBrains на замену
JavaА есть еще функциональные!
А как выбрать?
• Простое или сложное приложение?• Красивый или некрасивый синтаксис
языка?• Легко или сложно изучить язык?
На что вообще смотреть?
Уровни освоения технологий
1. «Черный ящик» - используем, приобретаем навыки, оттачиваем мастерство
2. Знаем, как устроена внутри, можем починить
3. Глубоко понимаем основы теории, можем создавать технологии
Плохая новость
На уровень 3 нельзя подняться без глубоких теоретических
знаний.В случае ИТ – это математика:
логика, теория алгоритмов, графы и так далее
Хорошая новость
Вы еще никуда не опоздали!
Делать новые языки и технологии все еще нужно.
Кто такой программист?
Кто такой программист?
• Решает задачи пользователей и бизнеса заданными инструментами• Умеет выбирать подходящие
инструменты для лучшего решения задач• Умеет создавать новые инструменты
Какой язык знать важнее всего?
Какой язык знать важнее всего?
• Ваш родной (русский)• Английский – без него
никуда• Язык математики
Я – студент, где учиться?
• Спецкурсы в вузе• Стажировки ИТ-компаний• Курсы от компаний
Я – школьник, куда поступать?
Нравится математика и теоретические изыскания –
ИМИТ или ФКН ОмГУ.Нравится инженерия и роботы –
ОмГТУ.
Вопросы?
• Сайт: http://7bits.ru• Email: at@7bits.it• Группа Вконтакте:
https://vk.com/7bitsavelix
Recommended