Решение на Изберете си проект от Стилиян Стоянов

Обратно към всички решения

Към профила на Стилиян Стоянов

Код

""" Здравейте, трудно ми е да си избера тема за проект, тъй като все още не съм натрупал опит с езика и не мога да преценя кое ще се окаже прекалено лесно или обратното - прекалено сложно(вероятно за мен :D).
Ще нахвърлям накратко няколко идеи вместо една и се надявам да ме насочите към някоя и разбира се да я промените, за да достигне достатъчното ниво на сложност за курса.
1)Да направя някаква 2D игра.Примерни са connect4, snake, tetris като ще отделя интерфейс-а от логиката на играта и в зависимост от играта мога да се пробвам да направя 2 интерфейса или gui само, или cli.
2)Да направя програмка за линукс, която показва основна системна и хардуерна информация - нещо като съществуващата top, но с повече информация - освен натоварване на системата, процеси и памет да дава по-подробна информация за възможностите на процесора, дънната платка, видео картата, информация за натовареността й и т.н.
3)Някакъв прост музикален плейър - видях го на няколко места като идея за проект и ми се струва интересно.
4)Mail Checker - Потребителят въвежда няколко акаунта(уеб сървър, тип на протокола, IP) и приложението ще проверява за имейли през определен интервал и при команда.
"""

История (1 версия и 2 коментара)

Стилиян обнови решението на 25.04.2015 12:29 (преди над 4 години)

+""" Здравейте, трудно ми е да си избера тема за проект, тъй като все още не съм натрупал опит с езика и не мога да преценя кое ще се окаже прекалено лесно или обратното - прекалено сложно(вероятно за мен :D).
+
+Ще нахвърлям накратко няколко идеи вместо една и се надявам да ме насочите към някоя и разбира се да я промените, за да достигне достатъчното ниво на сложност за курса.
+
+1)Да направя някаква 2D игра.Примерни са connect4, snake, tetris като ще отделя интерфейс-а от логиката на играта и в зависимост от играта мога да се пробвам да направя 2 интерфейса или gui само, или cli.
+
+2)Да направя програмка за линукс, която показва основна системна и хардуерна информация - нещо като съществуващата top, но с повече информация - освен натоварване на системата, процеси и памет да дава по-подробна информация за възможностите на процесора, дънната платка, видео картата, информация за натовареността й и т.н.
+
+3)Някакъв прост музикален плейър - видях го на няколко места като идея за проект и ми се струва интересно.
+
+4)Mail Checker - Потребителят въвежда няколко акаунта(уеб сървър, тип на протокола, IP) и приложението ще проверява за имейли през определен интервал и при команда.
+
+
+"""

От изборните неща най-интересна ми изглежда идеята за top-подобна util-ка. Може да разгледаш какво прави glances(което също е писано на python) за вдъхновение относно информацията, която да показваш.

Опиши обаче и малко повече подробности:

  • Какви метрики мислиш да следиш и как да ги покзваш(urwid е много яка библиотека за конзолни интерфейси)
  • Приблизително как си представяш архитектурната организация на приложението ти. Как можеш да отделиш събирането и обработване на системна информация в самостоятелен код, а кода отговарящ за интерфейса в отделно парче код.

Здравей, първо - благодаря за отговора, аз доста се позабавих. Иначе идеята ми беше да направя наистина top-подобна програма.Като на първия таб(екран) да се показват включени процеси, тяхното pid, използвано процесорно време, използвана виртуална памет и т.н. На втори екран/таб обща натовареност на процесора, на отделните ядра, на паметта, uptime, батерия, информация за процесора, дънната платка, паметта, техните настройки - текуща честота, максимална, тайминги и честота на паметта.На третият таб искам да показвам информация за видео карта - модел, настройки и както в gpu-z програмата за Windows(sensors): http://cdn.pcmech.com/wp-content/uploads/2015/05/gpuzscreen.png

Относно архитектурната организация - ще се опитам да отделя получаването на данните и предоставянето им на CLI и GUI интерфейс-а т.е. CLI и GUI примерно ще имат достъп до един и същи интерфейс някакви методи за получаване на необходимата им информация и те ще се грижат как да я визуализират.Нещо като това, което правихте на лекциите миналата седмица, а имам малък от опит от курса по Руби миналия семестър.