ru
Feedback
Программистика

Программистика

Закрытый канал

Лучший канал про python Ссылка для друга: https://t.me/+Ai6ughKtf5g2ZmFi Купить рекламу: https://telega.in/c/+Ai6ughKtf5g2ZmFi Админ: @JeyRahol По рекламе: @ReivuManager

Больше
5 594
Подписчики
-324 часа
+87 дней
-8530 день
Архив постов
💻Разработка API с использованием фреймворка Flask ⚙️В мире веб-разработки API (Application Programming Interface) становится все более популярным инструментом для создания взаимодействия между различными приложениями и сервисами. Flask - это легковесный фреймворк для разработки веб-приложений на языке Python, который отлично подходит для создания API. В этой небольшой статье я покажу процесс разработки простого API с использованием Flask. 🔗 Читать полностью @programistica

👩‍💻Работа с данными и визуализация с помощью библиотеки Matplotlib в Python В наше время данные играют ключевую роль в принятии решений и понимании происходящих процессов. Они могут представлять собой информацию о продажах товаров, финансовые показатели, результаты исследований и многое другое. Однако работать с большим объемом данных и понимать их с первого взгляда может быть сложно. И здесь на помощь приходит визуализация данных. В этом поможет нам библиотека Matplotlib. В статье я рассмотрел несколько примеров визуализации данных, а именно: 🗣Линейный график 🗣Гистограмма 🗣Круговая диаграмма 🔗 Читать полностью @programistica

⚙️Библиотека: Requests Библиотека Requests - это простой и элегантный способ выполнения HTTP-запросов в Python. Она позволяет
⚙️Библиотека: Requests Библиотека Requests - это простой и элегантный способ выполнения HTTP-запросов в Python. Она позволяет отправлять запросы на серверы, получать ответы и работать с данными в форматах JSON, XML и т. д. Requests часто используется для взаимодействия с веб-сервисами, API и получения данных из Интернета. Она предоставляет удобный интерфейс для работы с HTTP-запросами и ответами. 🔽Установка:
pip install requests
🔗Документация @programistica

Скоро произойдёт удаление всех постов, не связанных с python😭

😔Добрый день, дорогие читатели канала! Скоро пройдёт огромное обновление канал, мы изменим тематику канала на более погруженную в python, потому что в прежней тематике не получается дальше развивать канал, потому что такой обширной тематикой невозможно завлечь большое количество людей, прошу прощения, если это вас огорсчило, но это не может так оставаться, иначе канал, просто, не сможет существовать С уважением админ канала: @JeyRahol🔥

Вопросы из собеседования на позицию C#-разработчик.
1.Какова разница между типами value и reference в C#?
Тип value хранит в себе фактическое значение, а тип reference — ссылку на значение. Типы value включают в себя такие примитивные типы как int, float, bool, которые хранятся в стеке. Reference-типы, такие как классы и строки, хранятся в куче, и в переменных хранятся ссылки на их место в памяти.
2. Что такое инкапсуляция в C#?
Инкапсуляция — принцип ООП, включающий в себя объединение данных и методов в классе. Она гарантирует, что внутреннее состояние объекта скрыто от внешнего кода и доступно только через соответствующие методы. Инкапсуляция способствует сопровождаемости и повторной используемости кода с помощью инкапсуляции нужных данных и поведений.
3. В чём разница между наследованием и полиморфизмом в C#?
Наследование является основной характеристикой ООП, которая позволяет классам наследовать свойства и методы базового класса. Оно способствует повторному использованию кода и установлению иерархии классов. Полиморфизм же позволяет объектам разных типов обрабатываться как объекты общего базового типа. Это обеспечивает гибкость кода и динамическое поведение в зависимости от настоящего типа объекта
Надеюсь это поможет вам пройти собеседование на желаемую вами работу, удачи🔥
@programistica

Вопросы из собеседования на позицию бекэнд-разработчик.
1. Каковы семь уровней в системной модели OSI?
В рамках модели Open Systems Interconnection (OSI), отслеживание передачи информации от одного приложения через физические устройства к программному обеспечению на другом компьютере включает прохождение через семь абстрактных уровней с определенными функциональными задачами. Эти уровни включают физический, канал передачи данных, сетевой, транспортный, сеансовый, презентационный и прикладной.
2. Что такое обратный прокси?
Обратный прокси работает как посредник, который получает данные от сервера и отправляет их клиенту, чтобы клиент думал, что он получает данные напрямую от прокси-сервера. Прямой прокси-сервер тоже посредник, но его клиенты ставят между собой и сервером, к которому они обращаются.
3. Как реализовать ленивую загрузку? Когда она полезна? Какие есть подводные камни?
Для реализации ленивой загрузки можно использовать техники, такие как отложенная загрузка или пагинация данных. Она полезна, когда вы имеете дело с большим объемом данных или ресурсов, которые не нужны сразу, но могут быть запрошены в будущем. Это помогает улучшить производительность и экономить ресурсы, так как не все данные загружаются сразу. Подводные камни ленивой загрузки могут включать в себя возможные задержки при запросе ресурсов, что может привести к плохому пользовательскому опыту. Также необходимо учитывать возможность потери связи с сервером или изменения данных во время отложенной загрузки.
Надеюсь это поможет вам пройти собеседование на желаемую вами работу, удачи🔥
@programistica

⚙️ Методологии разработки ПО Разработка программного обеспечения - это нелегкий процесс, который требует значительных усилий, точного планирования и контроля. Для того, чтобы успешно завершать свои проекты, многие команды разработчиков прибегают к применению различных методологий управления проектами. Сегодня мы рассмотрим лишь некоторые из них, а именно: 🗣 Agile 🗣 Scrum 🗣 Waterfall Переходите по ссылке ниже и читайте подробнее: 🔗 Читать полностью

Документирование программ В этой статье я с вами обсужу следующие вопросы: 1.Что такое документирование программ? 2.На какие виды делится документация? 3.В чём полезная документация ПО? https://telegra.ph/Dokumentirovanie-programm-03-23

Всем добрый вечер! Я заметил, что вам понравилась рубрика с ответами на вопросы из собеседований на различные должности, напишите тут в комментариях, какие рубрики вы хотели бы ещё видеть, может полезные видео, интервью или софт, или напишите свой вариант

Вопросы собеседования на позицию C++ Разработчик. Я отобрал несколько несложных вопросов и ответов на них. Для удобства чтения: ‼️ - Помечены вопросы ⏺ - Помечены ответы ‼️Зачем нужен виртуальный деструктор? ⏺Чтобы избежать возможной утечки ресурсов или другого неконтролируемого поведения объекта, в логику работы которого включен вызов деструктора. ‼️Что стоит помнить при использовании исключений в конструкторе объекта? ⏺Если исключение не обработано, то c логической точки зрения разрушается объект, который еще не создан, а с технической, так как он еще не создан, то и деструктор этого объекта не будет вызван. ‼️Можете ли вы написать код для переворота строки? ⏺Код переворота строки для контейнеров, без временных переменных, не осуществляющий прохода по всей строке:
template <typename T >
void invert_string( T &a )
{
    T::size_type length = a.size();
    for( T::size_type i = 0; i < (length/2); ++i )
    {
        std::swap( a[i], a[length - i - 1] );
    }
}

std::string str = "abcdefg";
invert_string(str);
‼️Каким свойством должен обладать объект, чтобы его можно было добавить в ассоциативные контейнеры в качестве ключа? ⏺Так как значения в ассоциативных контейнерах хранятся отсортированными, то объект должен реализовывать оператор сравнения <, а остальные операторы сравнения могут быть выражены через него. Надеюсь это поможет вам пройти собеседование на желаемую вами работу, удачи🔥 @programistica

🖥Вопросы из собеседования на позицию фронтенд-разработчик. Я отобрал несколько несложных вопросов и ответов на них, которые вы можете не ответить, попросту из-за того, что перенервничали! Для удобства чтения: ‼️ - Помечены вопросы ⏺ - Помечены ответы ‼️Какие методы для повышения производительности вы использовали при создании или обслуживании своих проектов?async и defer async - для всех внешних скиптов, которым не нужно знать о HTML (google analytics, tracking scripts). Загружается вместе с html, после своей загрузки приостанавливает загрузку html, выполняется. Затем возобновляется загрузка html. defer - для внешних скриптов, которые не очень важны Загружается вместе с html, ждет пока html загрузится до конца. Потом выполняется: 👀Оптимизация изображений. 👀Конкатенация и углификация файлов. 👀Инлайновый CSS. Стили вставляются инлайном в HTML. ‼️Допустим, у вас есть 5 разных файлов со стилями, какой лучший способ интегрировать их в сайт? ⏺Лучше всего соединить все 5 файлов в один (например, с помощью gulp) и подключить этот файл. Это уменьшает количество запросов к серверу. ‼️В чём отличие между прогрессивным улучшением (progressive enhancement) и изящной деградацией (graceful degradation)?Прогрессивное улучшение - разработка приложения, начиная с самых простых вещей, которые будут работать во всех браузерах. Постепенное добавление новых технологий. Изящная деградация - разработка приложения с использованием самых современных технологий. Далее делаются фолбэки для старых браузеров. ‼️Сколько ресурсов браузер может одновременно загружать с одного домена?Для HTTP/1.1: IE 6 and 7: 2 IE 8: 6 IE 9: 6 IE 10: 8 IE 11: 8 Firefox 2: 2 Firefox 3: 6 Firefox 4 to 46: 6 Opera 9.63: 4 Opera 10: 8 Opera 11 and 12: 6 Chrome 1 and 2: 6 Chrome 3: 4 Chrome 4 to 23: 6 Safari 3 and 4: 4 Для HTTP/2(SPDY) Поддерживает множество запросов. Одно TCP соединение для всех запросов. Исключение Когда мы используем несколько поддоменов, указывающих один и тот же домен, мы можем повысить количество параллельно загружаемых ресурсов. Надеюсь это поможет вам пройти собеседование на желаемую вами работу, удачи🔥 @programistica

🖥Вопрос из собеседования на позицию Junior Python разработчик. Что такое *args и **kwargs в определении функции? 💻Ну, давайте же с этим разберёмся: *args и **kwargs - это специальные параметры в Python, которые позволяют передавать переменное количество аргументов в функцию. ⏺Параметр *args используется для передачи переменного количества аргументов без ключевого слова. Он представляет собой кортеж из всех дополнительных аргументов, переданных функции. ⏺Параметр **kwargs используется для передачи переменного количества именованных аргументов. Он представляет собой словарь из всех дополнительных именованных аргументов, переданных функции. Cимвол * и ** могут использоваться в определении функций для указания переменного числа аргументов, которые могут быть переданы в функцию. ⏺Символ * перед именем параметра означает, что все позиционные аргументы, которые не были использованы при определении других параметров, будут собраны в кортеж, который можно будет использовать внутри функции. Такой параметр называется *args. 👩‍💻Пример:
def my_fun(a, b, *args):
  print(a, b, args)

my_fun(1, 2, 3, 4, 5) 
#Вывод: 1 2 (3, 4, 5)
‼️Так как *args это картеж, то нужно с ним работать соответствующе, поэтому, чтобы вывести это в нормальном виде, нужно применить цикл for. ⏺Символ ** перед именем параметра означает, что все именованные аргументы, которые не были использованы при определении других параметров, будут собраны в словарь, который можно будет использовать внутри функции. Такой параметр называется **kwargs. 👩‍💻Пример:
def my_fun(a, b, **kwargs):
    print(a, b, kwargs)

my_fun(52, 666, x=100, y=245, z=11)
#Вывод: 52 666 {'x': 100, 'y': 245, 'z': 11}
‼️Подведём небольшой итог: использование *args и **kwargs позволяет создавать более гибкие функции, которые могут принимать любое количество аргументов. А именно: *args собирает все "лишние" аргументы в кортеж, а **kwargs собирает в словарь именованные аргументы. Спасибо за внимание, ставьте реакции, если понравился пост🔥 @programistica

Лазил я тут по сети и нашёл очень интересную нейросеть SocialClone🔥 SocialClone — нейросеть, которая сделает клона человека
Лазил я тут по сети и нашёл очень интересную нейросеть SocialClone🔥 SocialClone — нейросеть, которая сделает клона человека и создаст контент с его участием. Для того, чтобы создать "двойника", необходимо всего одно видео. Сервис может добавить изображения, музыку, субтитры и т.д. К сожалению, нейросеть платная.

Пользовательский интерфейс и его типы В этой статье я рассказал о пользовательских интерфейсах, рассмотрел следующие вопросы: 1. Что такое пользовательский интерфейс? 2. Типы пользовательских интерфейсах, их различия между собой. 3. Разобрал, где они могут применятся и какие среды разработки использовать для их создания. 4. Так же немного затронул тему Веб-интерфейс. https://telegra.ph/Polzovatelskij-interfejs-i-ego-tipy-03-19

Декларативное программирование Сегодня я вам расскажу о Декларативном программировании: Я разобрал следующие вопросы: 1. Что такое Декларативное программирование 2. Чем отличается Декларативное программирование от императивного 3. В каких областях применяется Декларативное программирование 4. Какие языки относятся к Декларативному программирование https://telegra.ph/Deklarativnoe-programmirovanie-03-18

Прислали мне недавно такой мемасик, долго смеялся😁
Прислали мне недавно такой мемасик, долго смеялся😁

Наборы команд RISC и CISC Сегодня я вам расскажу о RISC и CISC машинах, об их отличиях, и о командах, которые они использовали. Проектировщики писали для компьютеров команды, казавшиеся полезными, но приводившие к созданию довольно сложных машин. В 1980-х годах американские ученые-компьютерщики Дэвид Паттерсон (David Patterson) из Беркли и Джон Хеннесси (John Hennessey) из Стэнфорда провели статистический анализ программ и обнаружили, что многие сложные команды использовались редко. Они первыми разработали машины, содержащие только часто используемые программами инструкции; менее используемые были удалены и заменены комбинациями других команд. Такие устройства были названы RISC-машинами — компьютерами с сокращенным набором команд (от reduced instruction set computer). Старые разработки получили название CISC-машин — компьютеров со сложным набором команд (от complicated instruction set computer). Одной из отличительных черт RISC-машин является то, что они имеют архитетуру типа «загрузка — сохранение». Это означает, что в них используется две категории инструкций: одна для доступа к памяти, а вторая — для всего остального. Конечно, со временем использование компьютеров вышло на новый уровень. Первоначальные статистические исследования Паттерсона и Хеннесси были проведены до того, как компьютеры стали широко использоваться для таких вещей, как прослушивание аудио и просмотр видео. Статистика по более новым программам побуждает разработчиков добавлять новые инструкции для RISC-машин. Современные RISC-машины на самом деле сложнее прежних CISC-машин. Одной из машин CISC, оказавших большое влияние на индустрию, была PDP-11 от Digital Equipment Corporation. В ней было восемь универсальных регистров вместо единственного аккумулятора, который мы использовали в примерах. Эти регистры могут использоваться для косвенной адресации. Кроме того, поддерживаются режимы автоинкремента и автодекремента для увеличения или уменьшения значений в регистрах до или после использования. Это позволило создать несколько очень эффективных программ. Почему мы вообще должны об этом задумываться? Язык программирования C, являющийся продолжением языка B (который был продолжением BCPL), был разработан на PDP-11. Использование указателей в языке C, абстракции косвенной адресации более высокого уровня, в сочетании с функциями из B, такими как операторы автоинкремента и автодекремента, хорошо сопоставляются с архитектурой PDP-11. C стал очень популярным и повлиял на проекты многих других языков, включая C++, Java и JavaScript. Спасибо за внимание, ставьте реакции, если понравился пост🔥 @programistica

Аппаратное и программное обеспечение Сегодня я вам расскажу вам о аппаратном и программном обеспечении и отличиях между ними. Методы, используемые для создания ППЗУ, EEPROM и флеш-памяти, не ограничиваются памятью. Скоро мы увидим, как из логических схем создается компьютерное аппаратное обеспечение. А поскольку вы изучаете программирование, то знаете, что программы включают логику в код, и вы можете знать, что компьютеры предоставляют логику программам через свои наборы команд. В чем разница между аппаратным и программным обеспечением? Граница нечеткая. По большому счету, различий между ними мало, за исключением того, что создавать программное обеспечение гораздо проще, поскольку это не требует дополнительных затрат, кроме времени разработки. Вы, наверное, слышали термин «прошивка», который изначально относился к программному обеспечению в ПЗУ. Но большая часть прошивок теперь живет во флеш или даже в оперативной памяти, поэтому разница между обычным ПО и прошивкой минимальна. На самом деле все еще сложнее. Раньше микросхемы разрабатывались компьютерными гиками, которые строили схемы, наклеивая цветную малярную ленту на большие листы прозрачной майларовой пленки. В 1979 году американские ученые и инженеры Карвер Мид (Carver Mead) и Линн Конвей (Lynn Conway) изменили мир своей публикацией «Introduction to VLSI Systems», которая дала толчок развитию индустрии автоматизацииэлектронного проектирования (electronic design automation, EDA). Проектирование микросхем превратилось в проектирование программного обеспечения. Сегодня микросхемы разрабатываются с использованием специализированных языков программирования, таких как Verilog, VHDL и SystemC. В большинстве случаев программисту просто предоставляют аппаратное обеспечение. Но вы можете получить возможность поучаствовать в разработке системы, включающей как аппаратное, так и программное обеспечение. Проектирование интерфейса между аппаратным и программным обеспечением имеет решающее значение. Существует бесчисленное множество примеров микросхем с непригодными для использования, непрограммируемыми и ненужными функциями. Интегральные схемы дороги в изготовлении. Вначале все микросхемы были полностью заказными. Микросхемы собираются слоями: сами компоненты находятся внизу, а металлические слои — вверху, а затем они соединяются. Вентильные матрицы были попыткой снизить стоимость для некоторых слуаев использования; был доступен набор предварительно спроектированных компонентов, и только металлические слои проектировались по заказу. Как и в случае с памятью, они были заменены версиями, эквивалентными ППЗУ, которые можно было программировать самостоятельно. Существовал и эквивалент стираемой ППЗУ, который можно было стереть и перепрограммировать. Современные, программируемые пользователем вентильные матрицы (ППВМ, field-programmable gate array, FPGA) являются эквивалентом флеш-памяти; их можно перепрограммировать с помощью соответствующего ПО. Во многих случаях использование ППВМ дешевле, чем использование других компонентов. ППВМ очень функциональны; например, можно получить большую ППВМ, содержащую пару процессорных ядер ARM. Компания Intel недавно приобрела Altera и теперь может включать ППВМ в микросхемы процессора. Существует ненулевой шанс, что вы будете работать над проектом, содержащим одно из этих устройств, поэтому будьте готовы превратить свое программное обеспечение в аппаратное. Спасибо за внимание, ставьте реакции, если понравился пост🔥 @programistica

Оперативная память Сегодня разберёмся, что такое оперативная память и расскажу про виды этой самой памяти. С помощью ОЗУ полная ширина любой области памяти может быть прочитана или записана в любом порядке. Статическая ОЗУ (static RAM, SRAM) — это дорого, но быстро. На каждый бит требуется шесть транзисторов. Поскольку транзисторы занимают место, SRAM не очень хорошо подходит для хранения миллиардов или триллионов битов. Динамическая память (dinamic memory, DRAM) — хитрый прием. Электроны хранятся в микроскопических емкостях, называемых конденсаторами, с использованием только одного транзистора в качестве крышек емкостей. Проблема в том, что в этих емкостях происходят утечки, поэтому требуется время от времени обновлять память — регулярно пополнять емкости. Необходимо следить, чтобы обновление не произошло в критический момент, вызвав конфликт с доступом к памяти; это было проблемой в работе с одним из первых компьютеров на базе DRAM, DEC LSI-11. Одним из интересных побочных эффектов DRAM является то, что емкости пропускают больше, если на них падает свет. Это позволяет использовать их в качестве цифровых фотоаппаратов. DRAM применяется для больших микросхем памяти благодаря своей высокой плотности (количеству битов на область). Большие микросхемы памяти означают множество адресов, в связи с чем микросхемы DRAM используют схему мультипексированной адресации. Из-за других соображений внутреннего дизайна адрес строки можно сохранить быстрее с помощью строба адреса строки, а затем изменить адрес столбца с помощью строба адреса столбца. Строки — часто используемый термин, но их иногда еще называют страницами. Поэтому процесс можно сравнить с чтением книги — сканировать страницу намного проще, чем перелистывать. Это очень важный принцип программирования: хранение вещей, которые используются вместе, в одном ряду значительно повышает производительность. И SRAM, и DRAM являются энергозависимой памятью, а значит, данные могут быть потеряны при отключении питания. Память на магнитных сердечниках — старинный энергонезависимый тип ОЗУ, в котором биты хранятся в тороидальных (пончиковидных) железных элементах. Тороиды были намагничены: одно направление означало 0, а другое — 1. Физическая природа тороидов интересна, потому что они очень устойчивы к электромагнитным помехам извне. При таком типе памяти ферритовые сердечники располагались в сетке проводников, называемой плоскостью, через которую проходили вертикальные и горизонтальные проводники. Был также третий провод — проводник «ощущений». Он назывался так потому, что единственный способ прочитать состояние бита — попытаться его изменить, а затем «почувствовать», что произошло. Конечно, выяснив, что бит изменился, вы должны были вернуть его значение, иначе данные терялись — и бит оказывался бесполезным. Вся система основывалась на множестве дополнительных схем. Память на магнитных сердечниках на самом деле была трехмерной, поскольку плоскости собирались в блоки. Несмотря на то что память на магнитных сердечниках не нова, ее энергонезависимые свойства по-прежнему ценятся и продолжаются исследования по созданию коммерчески практичной магниторезистивной памяти, которая сочетает в себе лучшее из технологии памяти на магнитных сердечниках и оперативной памяти. Вот мы и разобрались в двух видах оперативной памяти, надеюсь вам понравилась информация, представленная в посте!🔥 @programistica

Программистика - Статистика и аналитика Telegram-канала