Forwarded from Точка входа в программирование
Статическая и динамическая типизация — кто эти двое и в чём ключевая разница?
Статическая и динамическая типизация — это два основных подхода к обработке типов данных в программировании.
В статической типизации тип данных переменной определяется на этапе написания кода и остаётся неизменным во время выполнения программы.
В динамической типизации тип переменной определяется во время выполнения программы, что позволяет ей изменяться в зависимости от присвоенных значений.
Статическая типизация обычно обеспечивает большую надёжность, так как позволяет обнаруживать ошибки на этапе компиляции, в то время как динамическая типизация обеспечивает большую гибкость в разработке. Некоторые языки программирования поддерживают один из типов типизации, другие же — оба типа.
@prog_point #general #теория
Статическая и динамическая типизация — это два основных подхода к обработке типов данных в программировании.
В статической типизации тип данных переменной определяется на этапе написания кода и остаётся неизменным во время выполнения программы.
В динамической типизации тип переменной определяется во время выполнения программы, что позволяет ей изменяться в зависимости от присвоенных значений.
Статическая типизация обычно обеспечивает большую надёжность, так как позволяет обнаруживать ошибки на этапе компиляции, в то время как динамическая типизация обеспечивает большую гибкость в разработке. Некоторые языки программирования поддерживают один из типов типизации, другие же — оба типа.
@prog_point #general #теория
Умеете ли работать с функцией sorted в Python?
Встроенная в Python функция сортировки элементов существенно упрощает жизнь разработчикам. Она быстро работает и позволяет отсортировать по возрастанию или убыванию.
Проверьте, предугадаете ли вы поведение кода с
https://pythonist.ru/test-sortirovka-python/
#тесты #python #сортировка
Встроенная в Python функция сортировки элементов существенно упрощает жизнь разработчикам. Она быстро работает и позволяет отсортировать по возрастанию или убыванию.
Проверьте, предугадаете ли вы поведение кода с
sorted()
:https://pythonist.ru/test-sortirovka-python/
#тесты #python #сортировка
Python — лучший язык для знакомства ребёнка с программированием
Почему? Python изначально был задуман как язык с интуитивным синтаксисом. Поэтому он отлично подходит в качестве первого языка программирования, особенно ребёнку. К тому же Python пригодится и дальше, ведь язык используется в бэкенде, Data Science, написании скриптов, ботов и т.д.
Другой вопрос: как заинтересовать ребёнка и чему его учить? Полезные советы по этой теме даны в статье:
https://pythonist.ru/python-dlya-detej/
#python
Почему? Python изначально был задуман как язык с интуитивным синтаксисом. Поэтому он отлично подходит в качестве первого языка программирования, особенно ребёнку. К тому же Python пригодится и дальше, ведь язык используется в бэкенде, Data Science, написании скриптов, ботов и т.д.
Другой вопрос: как заинтересовать ребёнка и чему его учить? Полезные советы по этой теме даны в статье:
https://pythonist.ru/python-dlya-detej/
#python
Разбираемся с форматом передачи данных XML
В программировании распространены два основных формата передачи данных — XML и JSON. Они представляют данные в стандартизированном виде, из которого легко перенести данные в структуры данных программы.
Один из них, XML, использует систему тегов. Значение элемента хранится между открывающим и закрывающим тегами. Кроме того, теги могут иметь атрибуты.
Подробнее об XML хорошо объясняется в статье: https://habr.com/ru/post/524288/
#mobile #веб
В программировании распространены два основных формата передачи данных — XML и JSON. Они представляют данные в стандартизированном виде, из которого легко перенести данные в структуры данных программы.
Один из них, XML, использует систему тегов. Значение элемента хранится между открывающим и закрывающим тегами. Кроме того, теги могут иметь атрибуты.
Подробнее об XML хорошо объясняется в статье: https://habr.com/ru/post/524288/
#mobile #веб
Forwarded from Однажды в трендах
Оператор «+» для конкатенации
«+» — простой и понятный для новичков оператор, но он не всегда является самым эффективным решением для конкатенации. Чем больше строк вам нужно соединить в одну, тем больше плюсов придётся добавить, а это засоряет код. Поэтому для конкатенации лучше использовать f-строки.
«+» — простой и понятный для новичков оператор, но он не всегда является самым эффективным решением для конкатенации. Чем больше строк вам нужно соединить в одну, тем больше плюсов придётся добавить, а это засоряет код. Поэтому для конкатенации лучше использовать f-строки.
Forwarded from Однажды в трендах
Зарезервированные слова для имён переменных
В Python есть список ключевых (или зарезервированных) слов, которые нельзя использовать в качестве имён переменных.
Если нарушить это правило, вы получите сообщение об ошибке SyntaxError: invalid syntax.
В Python есть список ключевых (или зарезервированных) слов, которые нельзя использовать в качестве имён переменных.
Если нарушить это правило, вы получите сообщение об ошибке SyntaxError: invalid syntax.
Простыми словами о SOLID
SOLID — это набор принципов, которые помогают разработчикам создавать более поддерживаемый и расширяемый код. В этом видео разбирается каждый принцип и на примерах показывается, как его можно применить в ваших приложениях.
Примеры кода написаны на TypeScript, но языковые конструкции будут понятны и близки ко всем си-подобным языкам. Так что видео идеально подойдёт для того, чтобы подчеркнуть основные идеи и начать использовать их в своей работе.
Ведь как написал один мудрый человек из комментариев: «SOLID — это как юношеский секс, все о нём говорят, но мало кто практикует».
#solid
SOLID — это набор принципов, которые помогают разработчикам создавать более поддерживаемый и расширяемый код. В этом видео разбирается каждый принцип и на примерах показывается, как его можно применить в ваших приложениях.
Примеры кода написаны на TypeScript, но языковые конструкции будут понятны и близки ко всем си-подобным языкам. Так что видео идеально подойдёт для того, чтобы подчеркнуть основные идеи и начать использовать их в своей работе.
Ведь как написал один мудрый человек из комментариев: «SOLID — это как юношеский секс, все о нём говорят, но мало кто практикует».
#solid
YouTube
SOLID ПРИНЦИПЫ простым языком (много примеров)
SOLID принципы с подробным и простым, наглядным объяснением. Single responsibility (Принцип единственной ответственности), open–closed (Принцип открытости/закрытости), Liskov substitution (Принцип подстановки Лисков), interface segregation (Принцип разделения…
📣 Python и MySQL: практическое введение
В статье рассмотрим на практическом примере, как из кода Python делать SQL-запросы к MySQL-серверу: CREATE, SELECT, UPDATE, JOIN и т. д.
К концу этого урока вы сможете:
⏺ Подключить ваше приложение к базе данных MySQL
⏺ Сделать запрос к базе данных для получения необходимых данных
⏺ Обработать исключения, возникающие при доступе к базе данных
🖥 Читать подробнее
В статье рассмотрим на практическом примере, как из кода Python делать SQL-запросы к MySQL-серверу: CREATE, SELECT, UPDATE, JOIN и т. д.
К концу этого урока вы сможете:
⏺ Подключить ваше приложение к базе данных MySQL
⏺ Сделать запрос к базе данных для получения необходимых данных
⏺ Обработать исключения, возникающие при доступе к базе данных
🖥 Читать подробнее
Библиотека программиста
🐍🐬 Python и MySQL: практическое введение
Рассмотрим на практическом примере, как из кода Python делать SQL-запросы к MySQL-серверу: CREATE, SELECT, UPDATE, JOIN и т. д.
Forwarded from Однажды в трендах
Для чего используется функция init
Функция init является конструктором класса, и она вызывается автоматически при создании нового экземпляра класса. Эта функция используется для инициализации атрибутов, которые будут принадлежать объектам, создаваемым с помощью класса.
Внутри функции init определяются атрибуты объекта, которые будут доступны через ссылку на экземпляр, на который ссылается переменная self.
Функция init является конструктором класса, и она вызывается автоматически при создании нового экземпляра класса. Эта функция используется для инициализации атрибутов, которые будут принадлежать объектам, создаваемым с помощью класса.
Внутри функции init определяются атрибуты объекта, которые будут доступны через ссылку на экземпляр, на который ссылается переменная self.
Forwarded from Однажды в трендах
Оператор ==
Этот оператор можно использовать для сравнения практически любых объектов: строк, списков, словарей и кортежей. Это делает его очень частым «гостем» в инструкциях if-else. К тому же, когда через неделю свой код воспринимать становится сложнее, всего два символа в операторе упрощают чтение длиной в сотни строк.
==
проверяет, равны ли значения двух операндов. В данном контексте — переменных, занимающих разные ячейки памяти. Этот оператор можно использовать для сравнения практически любых объектов: строк, списков, словарей и кортежей. Это делает его очень частым «гостем» в инструкциях if-else. К тому же, когда через неделю свой код воспринимать становится сложнее, всего два символа в операторе упрощают чтение длиной в сотни строк.
13 антисоветов начинающему разработчику
В статье автор предостерегает от распространённых практик и «советов», которые не только не помогут, но и окажутся вредными и затруднят развитие профессиональной карьеры разработчика.
Тут также обсуждаются различные аспекты, включая недостаточное освоение основ программирования, слишком раннюю специализацию, неправильный подход к изучению новых технологий и игнорирование командной работы.
Читать статью
#general #антисоветы
В статье автор предостерегает от распространённых практик и «советов», которые не только не помогут, но и окажутся вредными и затруднят развитие профессиональной карьеры разработчика.
Тут также обсуждаются различные аспекты, включая недостаточное освоение основ программирования, слишком раннюю специализацию, неправильный подход к изучению новых технологий и игнорирование командной работы.
Читать статью
#general #антисоветы
Библиотека программиста
😈 13 вредных советов начинающему разработчику
Делимся нашими антисоветами о том, как стать действительно «крутым» разработчиком.
🧑💻 Python: NewType против TypeAlias — [11:12]
Python — динамический язык, из-за чего мы не всегда знаем какой тип придёт в функцию, но мы можем сказать какой тип данных ожидаем.
В этом ролике речь пойдёт о типах NewType, TypeAlias, что это такое и где применяется, а также о декомпозиции типов.
Перейти к просмотру
#видео #python
Python — динамический язык, из-за чего мы не всегда знаем какой тип придёт в функцию, но мы можем сказать какой тип данных ожидаем.
В этом ролике речь пойдёт о типах NewType, TypeAlias, что это такое и где применяется, а также о декомпозиции типов.
Перейти к просмотру
#видео #python
15 книг для входа в IT
Несмотря на обилие курсов, видео и других форматов обучения, чтение книг всё ещё остаётся эффективным вариантом изучения программирования.
А в этой статье собрали топ книг, которые лучше всего подходят для начинающих разработчиков. Часть книг рассчитана на общие технические знания, другая часть — с уклоном в конкретный язык программирования.
#полезное #книга
Несмотря на обилие курсов, видео и других форматов обучения, чтение книг всё ещё остаётся эффективным вариантом изучения программирования.
А в этой статье собрали топ книг, которые лучше всего подходят для начинающих разработчиков. Часть книг рассчитана на общие технические знания, другая часть — с уклоном в конкретный язык программирования.
#полезное #книга
otus.ru
ТОП-15 книг для входа в IT OTUS
Подготовили для вас подборку литературы, которая познакомит вас с профессией и вдохновят расти и профессионально развиваться на выбранном пути. Многие из перечисленных книг будет интересно прочитать и уже работающим профессионалам. «Путь программиста: человек…
PHP всё ещё не умирает: нехватка кадров и высокие зарплаты
Уже долгое время среди разработчиков бытует мнение, что PHP (язык для бэкенда сайтов) умирает и вот-вот станет не актуальным. Поэтому многие начинающие разработчики игнорируют его и выбирают более популярные варианты: Python, JS, C#. Однако, из года в год PHP не снижает свою планку и продолжает оставаться востребованным во многих стеках веб-разработчики.
Если не хотите тесниться среди сотен Python/JS-джунов на одной вакансии, то можете рассмотреть менее популярный, но не менее востребованный PHP. А в этой статье как раз провели анализ рынка и зарплат для таких разработчиков.
#php #информация
Уже долгое время среди разработчиков бытует мнение, что PHP (язык для бэкенда сайтов) умирает и вот-вот станет не актуальным. Поэтому многие начинающие разработчики игнорируют его и выбирают более популярные варианты: Python, JS, C#. Однако, из года в год PHP не снижает свою планку и продолжает оставаться востребованным во многих стеках веб-разработчики.
Если не хотите тесниться среди сотен Python/JS-джунов на одной вакансии, то можете рассмотреть менее популярный, но не менее востребованный PHP. А в этой статье как раз провели анализ рынка и зарплат для таких разработчиков.
#php #информация
Как работает память компьютера «под капотом»?
Чтобы понять, что из себя представляет программа на самом деле, нужно разобраться с тем, кто и как её выполняет в конечном итоге.
Разумеется, этим занимается процессор. Но без понимания того, как организована оперативная память компьютера, как в ней хранятся данные и т. д., разбирать работу процессора не имеет смысла:
Простыми словами о работе памяти рассказывают в видео. А вот и весь плейлист по теме работы железа.
#железо #какработает
Чтобы понять, что из себя представляет программа на самом деле, нужно разобраться с тем, кто и как её выполняет в конечном итоге.
Разумеется, этим занимается процессор. Но без понимания того, как организована оперативная память компьютера, как в ней хранятся данные и т. д., разбирать работу процессора не имеет смысла:
Простыми словами о работе памяти рассказывают в видео. А вот и весь плейлист по теме работы железа.
#железо #какработает
YouTube
КАК РАБОТАЕТ ПАМЯТЬ КОМПЬЮТЕРА | ОСНОВЫ ПРОГРАММИРОВАНИЯ
Чтобы понять, что из себя представляет программа на самом деле, нужно разобраться с тем, кто и как ее выполняет в конечном итоге.
Этим занимается процессор, но без понимания того, как организована оперативная память компьютера, как в ней хранятся данные и…
Этим занимается процессор, но без понимания того, как организована оперативная память компьютера, как в ней хранятся данные и…
👍1
Если вы знакомы с объектно-ориентированным программированием, то наверняка слышали и о принципах SOLID. Эти пять правил разработки ПО задают траекторию, по которой нужно следовать, когда пишешь программы, чтобы их проще было масштабировать и поддерживать. Они получили известность благодаря программисту Роберту Мартину.
#теория #solid
#теория #solid
1) S – Single Responsibility (Принцип единственной ответственности)
Каждый класс должен отвечать только за одну операцию.
Если класс отвечает за несколько операций сразу, вероятность возникновения багов возрастает – внося изменения, касающиеся одной из операций вы, сами того не подозревая, можете затронуть и другие.
Назначение
Принцип служит для разделения типов поведения, благодаря которому ошибки, вызванные модификациями в одном поведении, не распространялись на прочие, не связанные с ним типы.
#теория #solid
Каждый класс должен отвечать только за одну операцию.
Если класс отвечает за несколько операций сразу, вероятность возникновения багов возрастает – внося изменения, касающиеся одной из операций вы, сами того не подозревая, можете затронуть и другие.
Назначение
Принцип служит для разделения типов поведения, благодаря которому ошибки, вызванные модификациями в одном поведении, не распространялись на прочие, не связанные с ним типы.
#теория #solid
2) O — Open-Closed (Принцип открытости-закрытости)
Классы должны быть открыты для расширения, но закрыты для модификации.
Когда вы меняете текущее поведение класса, эти изменения сказываются на всех системах, работающих с данным классом. Если хотите, чтобы класс выполнял больше операций, то идеальный вариант – не заменять старые на новые, а добавлять новые к уже существующим.
Назначение
Принцип служит для того, чтобы делать поведение класса более разнообразным, не вмешиваясь в текущие операции, которые он выполняет. Благодаря этому вы избегаете ошибок в тех фрагментах кода, где задействован этот класс.
#теория #solid
Классы должны быть открыты для расширения, но закрыты для модификации.
Когда вы меняете текущее поведение класса, эти изменения сказываются на всех системах, работающих с данным классом. Если хотите, чтобы класс выполнял больше операций, то идеальный вариант – не заменять старые на новые, а добавлять новые к уже существующим.
Назначение
Принцип служит для того, чтобы делать поведение класса более разнообразным, не вмешиваясь в текущие операции, которые он выполняет. Благодаря этому вы избегаете ошибок в тех фрагментах кода, где задействован этот класс.
#теория #solid
3) L — Liskov Substitution (Принцип подстановки Барбары Лисков)
Если П является подтипом Т, то любые объекты типа Т, присутствующие в программе, могут заменяться объектами типа П без негативных последствий для функциональности программы.
В случаях, когда класс-потомок не способен выполнять те же действия, что и класс-родитель, возникает риск появления ошибок.
Если у вас имеется класс и вы создаете на его базе другой класс, исходный класс становится родителем, а новый – его потомком. Класс-потомок должен производить такие же операции, как и класс-родитель. Это называется наследственностью.
#теория #solid
Если П является подтипом Т, то любые объекты типа Т, присутствующие в программе, могут заменяться объектами типа П без негативных последствий для функциональности программы.
В случаях, когда класс-потомок не способен выполнять те же действия, что и класс-родитель, возникает риск появления ошибок.
Если у вас имеется класс и вы создаете на его базе другой класс, исходный класс становится родителем, а новый – его потомком. Класс-потомок должен производить такие же операции, как и класс-родитель. Это называется наследственностью.
#теория #solid
Продолжение: Необходимо, чтобы класс-потомок был способен обрабатывать те же запросы, что и родитель, и выдавать тот же результат. Или же результат может отличаться, но при этом относиться к тому же типу. На картинке это показано так: класс-родитель подаёт кофе (в любых видах), значит, для класса-потомка приемлемо подавать капучино (разновидность кофе), но неприемлемо подавать воду.
Если класс-потомок не удовлетворяет этим требованиям, значит, он слишком сильно отличается от родителя и нарушает принцип.
Назначение
Принцип служит для того, чтобы обеспечить постоянство: класс-родитель и класс-потомок могут использоваться одинаковым образом без нарушения работы программы.
#теория #solid
Если класс-потомок не удовлетворяет этим требованиям, значит, он слишком сильно отличается от родителя и нарушает принцип.
Назначение
Принцип служит для того, чтобы обеспечить постоянство: класс-родитель и класс-потомок могут использоваться одинаковым образом без нарушения работы программы.
#теория #solid