Миниатюрный HTTP-сервер и Markdown-редактор

Выпуск № 16 ·

Проекты на C

  1. Tinyhttpd

    Сверхлёгкий HTTP-сервер менее чем на 500 строк. На его примере можно понять устройство и принципы работы серверных программ — отличный проект для начала изучения C!

Проекты на C#

  1. VerificationCode

    Демо капчи с перемещением ползунка. Пример кода:

    $(function () {
        /******************************************************
         * 参数一 验证码图片规格 "300*300", "300*200", "200*100"
         * 参数二 校验通过时执行的函数名
         * 绑定的div width与图片宽一致 height为图片高加34像素
         ******************************************************/
        $("#__Verification").slide("200*100", "test");
    })
    VerificationCode
  2. WeixinSDK

    SDK для WeChat на C#. Хотя уже есть много хороших SDK, этот проект создан прежде всего для обмена опытом и обучения. Каждый класс снабжён подробными комментариями и соответствующими модульными тестами; код легко читать, а абстракции интерфейсов упрощают расширение. Пример кода:

    using Wlitsoft.Framework.WeixinSDK.Core;
    using Wlitsoft.Framework.WeixinSDK.Message.Request.Event;
    using Wlitsoft.Framework.WeixinSDK.Message.Response;
    
    namespace WeixinSDK.Test.Fake
    {
        /// <summary>
        /// 订阅事件消息 Key_001 请求处理。
        /// </summary>
        public class RequestSubscribeEventMessageKey_001ProcessFake : WeixinMessageProcessBase
        {
            #region WeixinMessageProcessBase 成员
    
            /// <summary>
            /// 执行处理。
            /// </summary>
            public override void Process()
            {
                RequestSubscribeEventMessage requestMessage = base.GetRequestMessage<RequestSubscribeEventMessage>();
    
                ResponseTextMessage responseMessage = new ResponseTextMessage()
                {
                    Content = requestMessage.EventKey
                };
    
                base.ResponseMessage = responseMessage;
            }
    
            #endregion
        }
    }

Проекты на C++

  1. RedisDesktopManager

    Настольный менеджер Redis.

    RedisDesktopManager
  2. vnote

    Редактор Markdown. Удобное редактирование, режим управления Vim и подсветка блоков кода во время набора.

    vnote

Проекты на Go

  1. excelize

    Работа с файлами XLSX; поддерживаются Microsoft Excel 2007 и более поздние версии.

    excelize

Проекты на Java

  1. android-interview-questions-cn

    Подробное и качественное руководство с вопросами для собеседований по Android.

  2. SmartRefreshLayout

    Мощный, стабильный и зрелый фреймворк для обновления содержимого свайпом вниз в Android. В комплекте — разнообразные эффектные, практичные и аккуратно оформленные Header и Footer.

    SmartRefreshLayout
  3. SSM

    Пошаговое создание современной архитектуры веб-приложения на основе популярных фреймворков Spring+SpringMVC+Mybatis. Особенности:

    • Низкий порог входа, отлично подходит новичкам
    • Начинается с базовой интеграции трёх фреймворков
    • Постепенный рефакторинг для построения микросервисов на dubbo
    • Включает практические демо из реальной разработки
    • Проект постоянно обновляется: уже начат переход на SpringBoot+SpringCloud для создания микросервисных приложений
    SSM

Проекты на JavaScript

  1. APlayer

    Красивый музыкальный HTML5-плеер.

    APlayer
  2. docker-dashboard

    Консольный инструмент для Docker с простым и понятным кодом; подойдёт как практический учебный проект для Node.js.

    docker-dashboard
  3. DPlayer

    Милый видеоплеер с бегущими комментариями.

    DPlayer
  4. GifW00t

    Плагин для записи происходящего в браузере, написанный только на JavaScript. Подходит для записи игрового процесса в браузере, демонстрации ошибок сайта и создания инструкций. Примеры:

  5. mvvm

    Разбор принципов работы Vue: здесь можно изучить двустороннее связывание данных и ключевые модули, а затем самостоятельно реализовать упрощённый MVVM.

Проекты на Python

  1. getproxy

    Предельно простой проект для сбора прокси без настройки. Помимо скрипта для получения прокси, список работающих прокси можно взять прямо на этой странице (обновляется каждые 15 минут; HTTP и HTTPS).

  2. GetSubtitles

    Перетащите видеофайл в терминал — и субтитры за один шаг скачаются в папку с видео и получат то же имя, что и видео. Проверено на Ubuntu 16.04 и Windows 10; совместимо с Python 2 и 3. Python хорош тем, что на нём можно быстро сделать полезную лично для себя утилиту.

    GetSubtitles
  3. LearnPython

    Проект для изучения приёмов программирования на Python через написание кода. Особенности языка разбираются на примерах; есть и практические проекты, которые помогают закрепить знания на практике. Больше приёмов программирования на Python — в авторской колонке на Zhihu (китайском аналоге Quora).

  4. syncPlaylist

    Синхронизация плейлистов между NetEase Cloud Music и QQ Music, китайскими музыкальными сервисами. Проект прост в использовании и настройке, а его код легко понять. Используемые технологии: requests + beautifulsoup и selenium + phantomjs.

Искусственный интеллект

  1. ncnn

    Открытый высокопроизводительный фреймворк Tencent для инференса нейросетей, максимально оптимизированный для смартфонов.

  2. tutorials

    Подробный вводный курс по машинному обучению: включает видео- и текстовые уроки.

Прочее

  1. Bash-Snippets

    Подборка полезных и забавных shell-скриптов.

  2. feather

    Минималистичный набор бесплатных иконок с лаконичным, свежим оформлением.

    feather
  3. restful-api-design-references

    Список материалов по проектированию RESTful API, который поможет глубже разобраться в REST-подходе к разработке интерфейсов.

  4. useful-scripts

    Подборка скриптов для повседневных задач.

  5. You-Dont-Need-jQuery

    Фронтенд быстро развивается, и встроенных API современных браузеров уже достаточно для многих задач. Часто для работы с DOM и событиями не нужно изучать API jQuery. В проекте собраны замены для большинства методов jQuery: описание на китайском языке.