Как стать автором
Обновить
1
0

Пользователь

Отправить сообщение

Как работает компьютер: глубокое погружение (на примере Linux)

Уровень сложности Сложный
Время на прочтение 48 мин
Количество просмотров 129K



Введение


Я делала много вещей с компьютерами, но в моих знаниях всегда был пробел: что конкретно происходит при запуске программы на компьютере? Я думала об этом пробеле — у меня было много низкоуровневых знаний, но не было цельной картины. Программы действительно выполняются прямо в центральном процессоре (central processing unit, CPU)? Я использовала системные вызовы (syscalls), но как они работают? Чем они являются на самом деле? Как несколько программ выполняются одновременно?


Наконец, я сломалась и начала это выяснять. Мне пришлось перелопатить тонны ресурсов разного качества и иногда противоречащих друг другу. Несколько недель исследований и почти 40 страниц заметок спустя я решила, что гораздо лучше понимаю, как работают компьютеры от запуска до выполнения программы. Я бы убила за статью, в которой объясняется все, что я узнала, поэтому я решила написать эту статью.


И, как говорится, ты по-настоящему знаешь что-то, только если можешь объяснить это другому.


Более удобный формат статьи.

Читать дальше →
Всего голосов 152: ↑152 и ↓0 +152
Комментарии 36

Реализация MVC паттерна на примере создания сайта-визитки на PHP

Время на прочтение 16 мин
Количество просмотров 716K
mvc

Как вы уже догадались из названия статьи, сегодня речь пойдет о самом популярном, разве что после Singleton, шаблоне проектирования MVC, хотя такое сравнение не совсем уместно. Понимание концепции MVC может помочь вам в рефакторинге и разрешении неприятных ситуаций в которые, возможно попал ваш проект. Дабы восполнить пробел, мы реализуем шаблон MVC на примере простого сайта-визитки.

Читать дальше →
Всего голосов 80: ↑46 и ↓34 +12
Комментарии 175

Созданный мной корпус ПК «Groot»

Время на прочтение 9 мин
Количество просмотров 43K

Насмотрелся я как-то модных корпусов от крутых брендов и подумал, а чего бы самому не взять, да и не склепать корпус. DIY так сказать.

Сказано - сделано. Начал изучать вопрос, как оказалось материала в интернете не очень то и много. Идея была сделать корпус красивый стильный, но и не потратить на это горы золота. Стал изучать вопрос, из того что нашлось в интернете было 2 категории. Первая, это модинг конторы и энтузиасты, что побогаче, которые заказывали себе изготовление деталей на заводах, на станках ЧПУ и токарных, либо же печатали на 3d принтере, что собственно не дешево. И вторые, те кто как и я тратить состояние на это все не хотел, и собирался все делать максимально в ручную, домашние мастера строить из говна и палок. Тут как оказалось смотреть то особо и не на что, такие брали какой-нибудь старый корпус, пилили, кромсали, что-то крутили, какие-то резинки клеили, и на выходе получался у них какой-то фарш на скотче. Те же не многие кто решался делать корпус с нуля, делали обычно какие-то собачьи будки, или улики для пчел, что-то квадратное и без какой-либо идеи. Короче не очень.

Поэтому было решено действовать самому. Стал вопрос из чего делать корпус. С металлом все сложно, я как-то один старый корпус переделывал, и скажу что без специального оборудования и сварочного аппарата тут ловить нечего. Пластик, оргстекло и прочие подобные составляющие из пластмасс, в принципе не подходят, легко ломаются, хрупкие, торцы красиво не обработаешь, друг с другом хрен соединишь, согнуть вообще не реально. Поэтому из легкодоступного и по факту самого удобного и красивого материала остается только дерево. Довольно легкое, пластичное, упругое, легко обрабатывается и при этом красиво, где угодно можно купить, на любой цвет и вкус и за подходящие деньги. В общем из него и было решено делать корпус.

Читать далее
Всего голосов 131: ↑126 и ↓5 +121
Комментарии 91

Bash-скрипты, часть 3: параметры и ключи командной строки

Время на прочтение 10 мин
Количество просмотров 517K
Bash-скрипты: начало
Bash-скрипты, часть 2: циклы
Bash-скрипты, часть 3: параметры и ключи командной строки
Bash-скрипты, часть 4: ввод и вывод
Bash-скрипты, часть 5: сигналы, фоновые задачи, управление сценариями
Bash-скрипты, часть 6: функции и разработка библиотек
Bash-скрипты, часть 7: sed и обработка текстов
Bash-скрипты, часть 8: язык обработки данных awk
Bash-скрипты, часть 9: регулярные выражения
Bash-скрипты, часть 10: практические примеры
Bash-скрипты, часть 11: expect и автоматизация интерактивных утилит

Освоив предыдущие части этой серии материалов, вы узнали о том, что такое bash-скрипты, как их писать, как управлять потоком выполнения программы, как работать с файлами. Сегодня мы поговорим о том, как добавить скриптам интерактивности, оснастив их возможностями по получению данных от пользователя и по обработке этих данных.

image
Читать дальше →
Всего голосов 47: ↑41 и ↓6 +35
Комментарии 23

50 оттенков Go: ловушки, подводные камни и распространённые ошибки новичков

Время на прочтение 44 мин
Количество просмотров 211K


Go — простой и забавный язык. Но в нём, как и в любых других языках, есть свои подводные камни. И во многих из них сам Go не виноват. Одни — это естественное следствие прихода программистов из других языков, другие возникают из-за ложных представлений и нехватки подробностей. Если вы найдёте время и почитаете официальные спецификации, вики, почтовые рассылки, публикации в блогах и исходный код, то многие из подводных камней станут для вас очевидны. Но далеко не каждый так начинает, и это нормально. Если вы новичок в Go, статья поможет сэкономить немало часов, которые вы бы потратили на отладку кода. Мы будем рассматривать версии Go 1.5 и ниже.
Читать дальше →
Всего голосов 80: ↑76 и ↓4 +72
Комментарии 270

Является ли Go языком ООП?

Время на прочтение 9 мин
Количество просмотров 69K
Object-oriented design is the roman numerals of computing.
— Rob Pike, автор Go.

image

Предлагаю вашему вниманию вольный перевод заметки «Is Go An Object Oriented Language?» за авторством Steve Francia, в которой автор наглядно рассказывает об особенностях использования парадигмы ООП в Go. Сразу предупреждаю, что из-за свойств оригинального материала большую часть текста пришлось переформулировать полностью, где-то добавить своего. Флажок перевода убирать не стал.
Читать дальше →
Всего голосов 59: ↑49 и ↓10 +39
Комментарии 27

Введение в Data classes

Время на прочтение 7 мин
Количество просмотров 204K

Одна из новых возможностей, появившихся в Python 3.7 — классы данных (Data classes). Они призваны автоматизировать генерацию кода классов, которые используются для хранения данных. Не смотря на то, что они используют другие механизмы работы, их можно сравнить с "изменяемыми именованными кортежами со значениями по умолчанию".



Введение


Все приведенные примеры требуют для своей работы Python 3.7 или выше

Большинству python-разработчикам приходится регулярно писать такие классы:


class RegularBook:
    def __init__(self, title, author):
        self.title = title
        self.author = author

Уже на этом примере видна избыточность. Идентификаторы title и author используются несколько раз. Реальный класс же будет ещё содержать переопределенные методы __eq__ и __repr__.


Модуль dataclasses содержит декоратор @dataclass. С его использованием аналогичный код будет выглядеть так:


from dataclasses import dataclass

@dataclass
class Book:
    title: str
    author: str
Читать дальше →
Всего голосов 48: ↑46 и ↓2 +44
Комментарии 19

Полное практическое руководство по Docker: с нуля до кластера на AWS

Время на прочтение 39 мин
Количество просмотров 1.6M



Содержание



Вопросы и ответы


Что такое Докер?


Определение Докера в Википедии звучит так:


программное обеспечение для автоматизации развёртывания и управления приложениями в среде виртуализации на уровне операционной системы; позволяет «упаковать» приложение со всем его окружением и зависимостями в контейнер, а также предоставляет среду по управлению контейнерами.



Ого! Как много информации.

Читать дальше →
Всего голосов 125: ↑124 и ↓1 +123
Комментарии 43

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность