Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Hummel009 committed Jan 24, 2024
1 parent d8679f1 commit 9aa0ee3
Showing 1 changed file with 21 additions and 17 deletions.
38 changes: 21 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,31 +9,35 @@
[![Technical Debt](https://sonarcloud.io/api/project_badges/measure?project=Hummel009_Calculator-WinAPI&metric=sqale_index)](https://sonarcloud.io/summary/overall?id=Hummel009_Calculator-WinAPI)
[![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=Hummel009_Calculator-WinAPI&metric=ncloc)](https://sonarcloud.io/summary/overall?id=Hummel009_Calculator-WinAPI)

Простейший графический калькулятор на WinAPI. Реализован на С, С++, C#, Java, Kotlin (JVM), Kotlin (Native), FASM (x86). Все эти языки либо напрямую совместимы с WinAPI, либо имеют возможность обращаться к WinAPI через обёртки.
Простейший графический калькулятор на WinAPI. Реализован на С, С++, C#, Java, Kotlin (JVM), Kotlin (Native), FASM (x86).
Все эти языки либо напрямую совместимы с WinAPI, либо имеют возможность обращаться к WinAPI через обёртки.

Изначально также планировался проект на языке Scala, но оказалось, что полная работа с WinAPI в языке невозможна в силу принудительной инкапсуляции полей в обёртках для структур.
Изначально также планировался проект на языке Scala, но оказалось, что полная работа с WinAPI в языке невозможна в силу
принудительной инкапсуляции полей в обёртках для структур.

## Алгоритм

Калькулятор оснащён хранилищем вида "операнд 1, операция, операнд 2". Нажатие различных кнопок по-разному заполняет это хранилище и очищает экран. Нажатие кнопки равенства вычисляет результат того, что лежит в хранилище. По размеру хранилища можно определить, пригодно ли содержимое для вычисления или нет.
Калькулятор оснащён хранилищем вида "операнд 1, операция, операнд 2". Нажатие различных кнопок по-разному заполняет это
хранилище и очищает экран. Нажатие кнопки равенства вычисляет результат того, что лежит в хранилище. По размеру
хранилища можно определить, пригодно ли содержимое для вычисления или нет.

## Основная информация

* Для работы с проектами Java, Kotlin (JVM) и Kotlin (Native) необходимо открыть весь этот репозиторий в IntelliJ IDEA.
* Для работы с проектами C, C++ и C# необходимо открыть соответствующие подпапки в Visual Studio Code.
* Для работы с ассемблером необходимо открыть файл .prt из соответствующей подпапки в FASM Editor 2.0.

| Технология | Версия |
|----------------------------------------|---------|
| Система автоматической сборки Gradle | 8.5 |
| Система автоматической сборки Make | 4.3 |
| Система автоматической сборки CMake | 3.28.1 |
| Java, используемая для запуска Gradle | 8+ |
| Java, используемая для сборки проекта | 17+ |
| Java, используемая для запуска проекта | 17+ |
| Kotlin | 1.9.22 |
| .NET | 8.0 |
| Стандарт C++ | C++23 |
| Стандарт C | C2X |
| Компилятор GCC для C/C++ | 13.2.0 |
| Ассемблер FASM | 1.73 |
| Технология | Версия |
|----------------------------------------|--------|
| Система автоматической сборки Gradle | 8.5 |
| Система автоматической сборки Make | 4.3 |
| Система автоматической сборки CMake | 3.28.1 |
| Java, используемая для запуска Gradle | 8+ |
| Java, используемая для сборки проекта | 17+ |
| Java, используемая для запуска проекта | 17+ |
| Kotlin | 1.9.22 |
| .NET | 8.0 |
| Стандарт C++ | C++23 |
| Стандарт C | C2X |
| Компилятор GCC для C/C++ | 13.2.0 |
| Ассемблер FASM | 1.73 |

0 comments on commit 9aa0ee3

Please sign in to comment.