Skip to content

Instantly share code, notes, and snippets.

View antonowano's full-sized avatar

Ivan Antonov antonowano

View GitHub Profile
@antonowano
antonowano / favicon.md
Last active November 11, 2025 15:10
Подготовка идеального favicon

Подготовка идеального favicon

Практические советы для дизайнера, который готовит набор фав-иконок. В итоге должны получиться следующие файлы:

  • favicon.ico (32x32)
  • favicon.svg (50x50)
  • apple-touch-icon.png (180x180)
  • icon-192.png (192x192)
  • icon-512.png (512x512)
@antonowano
antonowano / grpc-php.Dockerfile
Last active January 12, 2022 09:07
Docker-контейнер для компиляции proto-файлов для PHP
FROM ubuntu:latest
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
git \
cmake \
g++
# установка gRPC
WORKDIR /tmp
@antonowano
antonowano / websocket-accept.http
Created December 29, 2021 08:25
HTTP-заголовки ответа сокет-сервера на принятие подключения
101 Switching Protocols
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept: StGDxo9IOXnDUTT/4f3VXA==
@antonowano
antonowano / websocket-open.http
Created December 29, 2021 08:21
HTTP-запрос на открытие сокета
GET /chat
Host: antonov.site
Origin: https://antonov.site
Connection: Upgrade
Upgrade: websocket
Sec-WebSocket-Key: StGDxo9IOXnDUTT/4f3VXA==
Sec-WebSocket-Version: 13
@antonowano
antonowano / SOLID.md
Created December 19, 2021 12:30
SOLID Principles

SOLID

Принцип гарантирует, что программу легко будет поддерживать. Ваш код будет легко читать, в нем легко будет находить ошибки, его легко будет переиспользовать.

SRP (Single Responsibility Principle)

Каждый объект должеть иметь одну обязанность и эта обязанность должна быть полностью инкопсулирована в класс.

OCP (Open-Closed Principle)

@antonowano
antonowano / chat-socket-client.java
Last active December 18, 2021 18:48
Java chat socket-client example
import java.io.*;
import java.net.Socket;
import java.util.Scanner;
public class Client {
public static void main(String[] args) {
var scanner = new Scanner(System.in);
System.out.print("Enter your name: ");
String name = scanner.nextLine();
@antonowano
antonowano / chat-socket-server.java
Last active December 18, 2021 18:49
Java chat socket-server example
import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.ArrayList;
public class Server {
private static final int SOCKET_PORT = 3001;
private static final int COUNT_CLIENTS = 10;