Текстовый редактор до сих пор остается самым востребованным наравне у пользователей с браузером софтом. Типовые задачи, которые приходится решать постоянно так или иначе связаны с текстами: чтение текстов, набор новых текстов, редактирование и форматирование. Казалось бы, изобретать велосипед в этом направлении уже поздно. Имеется огромное число различных по функционалу редакторов. Платный и бесплатных. Хороших и плохих. Тем не менее, если посмотреть на текстовый редактор с позиций будущего программиста, то приходит в голову такой слоган: «каждый программист должен написать свой текстовый редактор». Так же как и, считай уже догма - «каждый программист должен написать свой калькулятор», задание написать текстовый редактор можно считать классикой жанра в обучении.
В качестве примера, тут хочется привести бесплатный текстовый редактор, который предлагают скачать на сайте: https://www.windowsword.ru. С первого взгляда его не отличить от известного всем редактора от Microsoft. А почему бы и не попробовать самому сделать аналог такого редактора. Вместо того, чтобы изучать теорию, лучше ведь на практике попробовать воспроизвести классиков. Если вам в одиночку удастся реализовать такой проект, то он точно станет вашей визитной карточкой, так сказать, пополнит ваше портфолио. Может вас даже Билл Гейтс лично пригласить на работу.
Ну а если серьезно, то при создании своего текстового редактора есть где развернуться. Если вспомнить распределение Паретто, согласно которому, применительно к текстовому редактору, можно сделать вывод, что только 80% всех пользователей редактора использует только 20% его возможностей, то почему бы не оставить в вашей версии редактора эти вот 20% самых востребованных функций и добавить пару-тройку своих фишек.
Надо просто вспомнить, какой функционал вам чаще всего нужен был за время учебы в университете и реализовать специфический редактор, рассчитанный на студентов, например. Конкретнее? Да вот, пожалуйста, вам такой список:
- Встроенные шаблоны для создания чертежных рамок.
- Красивое форматирование программных кодов, которые надо вставить в ваш отчет или курсовую работу.
- Оформление списка литературы по ГОСТу.
- Шаблоны титульных листов лабораторных работ, рефератов и прочей ерунды.