-
Data: 2011-08-13 20:56:12
Temat: Re: jaki wybrac jezyk?
Od: m...@t...pl szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> On Aug 13, 9:09 pm, "Marszalkowski" <m...@t...pl> wrote:
> Ale jakiego zadania? Przecież nic nie opisałeś - wiadomo tylko, że dla
> danych wejściowych program ma wyprodukować wartości wyjściowe. I że
> jest text I/O.
> Wszystkie języki się do tego nadają.
Nie znam takich języków jak Prolog, Lisp, Python, Perl. Zastanawiam
się czy warto któregoś się pouczyć. Czy można tak ogólnie o którymś
z nich powiedzieć, że zapis typowych algorytmów niesie mniejsze ryzyko
pomyłki?
Kiedyś Java była reklamowana w ten sposób, że pisząc w Javie
popełnia się mniej błędów, że Java ma np. kontrolę zakresów
tablic, itd. Czy obecnie jakieś języki uznaje się za jeszcze
bardziej pomocne w pisaniu bezbłędnego kodu?
Często słyszę opinię że Python mocno chroni programistę przed
popełnianiem błędów. Mówi się że programy w Pythonie mają
najmniej linii kodu i że Python to jest język w którym się
myśli a nie koduje. W jakim stopniu to jest prawda? Jakie
Python ma odpowiedniki javowej kontroli zakresów tablic?
> Natomiast od tego, co *konkretnie* ten program ma robić, będzie
> zależało, który język się do tego lepiej nadaje.
Trochę algorytmów kombinatorycznych, trochę zmiennoprzecinkowych.
Trochę przeszukiwania grafów, trochę symulacji monte carlo, trochę
sortowania, trochę wyszukiwania k-tej statystyki, rozwiązywanie
układów równań... Problem w tym że w jednym programie jest tego
bardzo dużo i na dodatek zostało zoptymalizowane. Pełno jakiś
sztuczek z ujemnymi indeksami w tablicach, celowe przekraczanie
zakresów struktur, itd. Błędów obawiam się wszędzie. Myślę sobie,
żeby to samo napisać od nowa, ale użyć bezpieczniejszego algorytmu i
bezpieczniejszego języka programowania.
> Kilka pytań pomocniczych: czy to jest przetwarzanie typu batch
> czy to jest przetwarzanie tekstu,
> czy nadal ma to być zoptymalizowane na szybkość,
Może być batch, mogę zrzucić dane do pliku tekstowego i może
być przetwarzanie po jednym wierszu. Może działać bardzo wolno.
Nie musi mieć wątków. Przetwarzania tekstowego nie ma w ogóle,
poza... wczytaniem wiersza danych :)
> Jeżeli problem jest ogólny, to pewnie przyda się jakiś ogólny język.
Raczej tak, raczej język ogólny. Intryguje mnie Python.
> A skoro wcześniej wykorzystano C++ i działało, to się pewnie nadawał.
Oryginał nadal ma pozostać w C++, padła idea, aby napisać coś co np.
na wyrywki zrzuci dane do pliku tekstowego i sprawdzi bezpieczniejszą
wersją algorytmu. Oryginalna wersja działa i wydaje się że działa
bardzo dobrze, ale... chciałbym się jeszcze bardziej upewnić.
Pozdrawiam
--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Następne wpisy z tego wątku
- 13.08.11 21:04 m...@t...pl
- 13.08.11 21:03 A.L.
- 13.08.11 21:14 m...@t...pl
- 13.08.11 21:11 Edek
- 13.08.11 21:27 m...@t...pl
- 13.08.11 21:26 Michoo
- 13.08.11 21:47 Edek
- 14.08.11 02:52 p...@p...onet.pl
- 14.08.11 07:05 Marszalkowski
- 14.08.11 07:21 slawek
- 14.08.11 07:28 m...@t...pl
- 14.08.11 07:45 p...@p...onet.pl
- 14.08.11 08:02 Muchozol
- 14.08.11 08:05 slawek
- 14.08.11 09:01 Szyk
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-20 Gdańsk => Programista Full Stack .Net <=
- 2025-01-20 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-01-20 Warszawa => Full Stack .Net Engineer <=
- 2025-01-20 huta ruszyla
- 2025-01-20 piece wodorowe
- 2025-01-20 Lublin => Programista Delphi <=
- 2025-01-20 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-01-20 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-01-20 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-01-19 Test - nie czytać
- 2025-01-19 qqqq
- 2025-01-19 Tauron przysyła aneks
- 2025-01-19 Nowa ładowarka Moya a Twizy -)
- 2025-01-18 Power BANK z ładowaniem przelotowym robi PRZERWY
- 2025-01-18 Pomoc dla Filipa ;)