W czym pisać, żeby..

0

Cześć,
Chciałem się w ramach samo-nauki, a także z potrzeby zabrać za pisanie klienta GG (żaden nie spełnia oczekiwań nawet jak jest przeładowany opcjami). I teraz mam pytanko - na uczelni liznąłem trochę C# (Visual Studio, bardzo przyjemne), Javy (też układanie elementów na formach), ale z tego co wiem - programy wynikowe pisane w tym mogą okazać się powolne i pamięciożerne. Chciałbym, aby mój program był w miarę "lekki". Nie będzie w nim żadnej konfiguracji, żadnych opcji - wszystko będzie na "sztywno". No i powiedzmy, że daję czemuś takiemu napisanemu w C# limit ok 30MB w RAM. Czy jest to osiągalne, czy muszę się zabrać za klepanie w C++, bez żadnych układanek wizualnych (bo z tego co wiem pisane w C++ programy będą lekkie, ale więcej włosów z głowy wyrwę zanim ukończę projekt)?
Sprawdziłem teraz programiki nic nie robiące z uczelnianych zajęć - do RAMu wpada 10MB + 12MB Windows przerzuca do SWAPu.
Tak naprawdę nie mam pojęcia nt ww. języków, siedzę w PHP tylko - dlatego jeżeli napisałem coś od rzeczy to proszę o wyrozumiałość :D

0

nie wiem jak w C# ale w javie mozna zrobic paczke z programem polaczona z jre, wprawdzie bedzie to wazyc kilkadziesiat MB ale to dosc prosty sposob zeby miec przenosna aplikacje z instalatorem itp

0

Pod Delphi jako tako działa tylko komponent TEasyGG. Niestety wymaga on konieczności posiadania Delphi z modułami do obsługi TXMLDocument lub samych modułów z postaci plików *.pas z wersji Enterpise. To jeżeli chciałbyś pisać pod darmowym Delphi 7 Personal na przykład. Nie wiem jak będzie pod Turbo Delphi czy Lazarusem, bo tych środowisk nie używałem nigdy. Dodatkowo TEasyGG potrafi się wykrzaczyć czasami niestety. Poza tym przy liczbie dodanych kontaktow powyżej 160 sztuk, z tego co zauważyłem nie odczytuje prawidłowo ich opisów oraz statusów. Nie analizowałem jednak jak z zajętością pamięci, ale nie powinno być źle. Natomiast jeżeli interesują Ciebie inne języki programowania to niewiele jestem w stanie Tobie doradzić, pewnie ktoś inny coś doradzi. Dla mnie całkiem dobrym klientem jest AQQ, na który to klient przesiadłem się jakiś czas temu po długo letnim siedzeniu pod starszą wersją GG.

0

libgadu i c++, delphi to sobie daruj. Jakies T cos tam porzucone pewnie 5 lat temu.

0

Skoro ma być szybkie, to assembler :D A na serio - nie przesadzaj z tą "lekkością" :> Kompy są współcześnie zbyt szybkie, żeby się tak bardzo tym przejmować. No chyba, że np. przy starcie będziesz do RAMu ładował całe archiwum rozmów... :> hehehe

A z ciekawości - jakich opcji Ci brakuje ? Może łatwiej jest dopisać wtyczkę do istniejącego komunikatora, niż pisać cały od nowa ? ;p

Zainteresuj się Qt (jako technologią).

0

Qt same w sobie też jest dość ciężkie, zwłaszcza z modułami QWeb (15 MiB DLLek).

Z javą jest taki problem, że same środowisko uruchomieniowe zżera RAM. Potem wzrost zapotrzebowanie na RAM jest w miarę proporcjonalne do rozmiaru danych w programie. 25 mebibajtowym Hello Worldem nie trzeba się zbytnio przejmować.

Naukę prawdziwego programowania (a nie skryptowania, z czym masz doświadczenie w PHP) zacznij od C++. Potem sam zdecyduj, czy przenosisz się na "wyższy poziom", czy nie. Moim zdaniem warto znać zarówno C/C++ jak i któryś z tych wyższych poziomów (np. Java) oraz jakiś skryptowy (np. Python, ECMAScript)

0

ciut nie na temat, ale sprawdz Pidgina - bardzo lekki i wszechstronny klient.

Ucieklem na niego pare lat temu wlasnie z AQQ, pod ktorego tez nieco pisalem (wtyczka do Jabbera dla wersji 1.x, zanim powstala 2.x bedaca sama w sobie klientem Jabbera) - chyba nawet jeszcze pozostalosci portalu u nas wisza http://aqq.4programmers.net/ ktory zaczalem zanim sie nie przesiadlem...

testowalem wczesniej wiele, mirande, tlena, konnekta, psi, ale dopiero Pidgin spelnil zalozenie polaczenia funkcjonalnosci, prostoty i szybkosci

0

hm, dzięki za odpowiedzi, wrzuciłem wszystkim parę komentarzy pod postami (jakoś tak wygodniej było odp).
to teraz najbardziej pewnie mnie interesuje Visual C# - pisał ktoś w tym jakąś cięższą/większą aplikację? Jak z zżeraniem zasobów?

0
Razi91 napisał(a)

Naukę prawdziwego programowania (a nie skryptowania, z czym masz doświadczenie w PHP) zacznij od C++. Potem sam zdecyduj, czy przenosisz się na "wyższy poziom", czy nie. Moim zdaniem warto znać zarówno C/C++ jak i któryś z tych wyższych poziomów (np. Java) oraz jakiś skryptowy (np. Python, ECMAScript)

Z całym szacunkiem, ale proszę nie mieszać PHP do nowoczesnych języków skryptowych. Pierwotnie był to system dynamicznych szablonów, który został rozdmuchany do formy "języka programowania". Kiedy ostatni raz przyglądałem mu się uważniej nawet GC nie posiadał, obsługa wyjątków była jakaś krzywa, interpreter ładował wszystkie dające się załadować moduły od razu, zaś setki ponazywanych na wszystkie możliwe sposoby funkcji trafiały w global namespace (w ogóle dorobili jakieś inne?). To wszystko bezstanowo, odpalane na ułamki sekund przez serwer WWW, trzymając dane (np. sesje) w plikach tymczasowych.
Nowoczesne języki skryptowe pozwalają na znacznie więcej, na tworzenie samodzielnych serwerów webaplikacji (np. Zope, posiadające nawet wbudowany serwer HTTP), narzędzi "naukowych" w typie mathlaba (SciPy) czy typowych aplikacji desktopowych (w oparciu np. o PySide, binding Qt od Nokii). Innym przykładem dojrzałości i "prawdziwego" programowania jest PyPy: interpreter i VM z JIT będący najwydajniejszą obecnie implementacją Pythona 2.x (w 100% zgodny z 2.7, także pod względem biblioteki), Python zaimplementowany w Pythonie, z wieloma wymiennymi GC itd.
Stawianie PHP obok czegokolwiek jest krzywdzące dla tego "czegokolwiek", czymkolwiek by nie było, nawet Perlem czy Brainfuckiem.

0
dzek69 napisał(a)

to teraz najbardziej pewnie mnie interesuje Visual C# - pisał ktoś w tym jakąś cięższą/większą aplikację? Jak z zżeraniem zasobów?

Aplikacja zjada ilość zasobów proporcjonalną do jakości kodu. Jeśli nie zapomni się o usingach, Dispose, StringBuilder i tego typu pierdołach mających wpływ na wydajność, to nie powinno być tragedii.

Nie jesteś czasem za stary na wynajdywanie koła od nowa? ;)

0

A ja mam 8 GiB RAMu i chętnie zobaczyłbym jakąś wielką krowę, napisaną w Javie, z milionem ficzerów. Lekkich klientów GG jest na pęczki, a czegoś rozbuchanego nie ma.

Sporo dziwnych, mało potrzebnych, acz ciekawych ficzerów można dodać:

  • historia opisów + najczęściej pojawiające się linki/ domeny,
  • najczęściej używane słowa w rozmowach,
  • obliczanie czasu dostępności znajomych,
  • śledzenie aktywności znajomych + na podstawie tego przewidywanie kiedy będą dostępni (ale to nolajferskie :P ),
  • automatyczny skracacz URLi,
  • supermultikonto (tzn wielokrotne) do nękania dowolnego typa dziesiątkami wiadomości,
  • integracja z cyckizrana.pl (np cycki dnia w opisie),
  • wbudowany PhotoYebator do edycji awatara,
  • rotator/ generator opisów,
  • itp itd

1 użytkowników online, w tym zalogowanych: 0, gości: 1