![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 148 Pomógł: 0 Dołączył: 8.06.2005 Ostrzeżenie: (0%) ![]() ![]() |
Pytanie zawarte w temacie zostało trochę dziwnie sformułowane... mianowicie nauczyć (składni, czy nawet bibliotek) można wielu języków. Jednak mam takie pytanie: jaka jest rozsądna ilość (języków, technologii) które jesteśmy (my programiści wiem, dumnie brzmi^^) w stanie się nauczyć, a jednocześnie podążać za trendami i zmianami w tych językach (zmiana składni, nowe biblioteki, frameworki)(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Dajmy na to że jestem w stanie nauczyć się PHP, C/C++, Jave, Pythona (dalej nazywanymi "technologiami"); ba, mogę się nawet nauczyć wielu popularnych bibliotek których używają programiści tych języków; no ale pozostaje kwestia ilu z tych "technologii" jestem w stanie uczyć się/dokształcać na bieżąco; Jaki jest wasz zestaw powiedzmy... 3 języków programowania dzięki którym mogę wszystko zrobić ( lub prawie ) w sensie pisania programów na różne platformy: - pc - telefony - strony internetowe - itd... Jak myślicie?(IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 467 Pomógł: 13 Dołączył: 22.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
http://en.wikipedia.org/wiki/Visual_Studio_Team_System Ciesz się że do Javy jest coś takiego, jeżeli przekonacie mnie do zmiany orientacji to już wiem od jakiego narzędzia zacznę. No takiego "graficznego" narzędzia dla Javy pewnie nie znajdziesz. No ale też nie znam rozwiązań komercyjnych, może Borland albo IBM (w sumie pakiet Rational raczej na pewno musi coś takiego udostępniać) coś takiego mają. Z tym, że tutaj kolejna różnica. Piszesz, że robisz duże projekty. Więc policzmy, że masz 20 osobowy zespół. 20 licencji VS + licencja na VSTS + 20 licencji klienckich na VSTS + 20 licencji na Windows... = 40000 zł? W Javie spędzisz osobotydzień (zakładając, że zatrudnisz kogoś kto tej technologii jeszcze nie zna) na konfiguracji (~1500zł), ale toolsy masz za darmo. Zresztą na konfiguracje MS'a też z conajmniej 1000zł komuś będziesz musiał zapłacić. Także tutaj jest różnica. Oczywiście możesz kupić Rationale od IBM i będzie łatwiej (chociaż pewnie nie aż tak dużo łatwiej) ale to będzie Cie kosztować prawdopodobnie więcej niż rozwiązania MS. No a żeby Ci się 40000zł zwróciło to trzeba jednak troszkę tych projektów zrobić... A do Javy NetBeans albo Eclipse to naprawdę najwyższa półka. //edit: choć jak o tym teraz tak myśle, to maven + artifactory + hudson + fisheye + netbeans/eclispe (oba wspierają maven) to już dość blisko. W C# też się da. Zrozum, że jeśli piszę czy to w Javie, czy w C# i korzystam z winapi, to ten kod siłą rzeczy nie pójdzie na linux/mac. I odwrotnie. Jeśli używasz api danego systemu operacyjnego, to nie można napisać jednego kodu na wszystkie platformy. Ale kto używa api systemu operacyjnego w Javie? Java zresztą chyba standardowo nie udostępnia WinAPI? Zobacz ile firm dziennie wykorzystuje i testuje technologię m$ w tym C# (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) http://www.microsoft.com/casestudies/partner.aspx No wiesz, gdyby wylistować wszystkie firmy które coś w Javie włożyły to lista też byłaby dłuższa. No i jest jeszcze fakt, że po prostu znam wiele perełek oprogramowania napisanych w Javie i ani jednego napisanego w C#. Może dlatego, że raczej się w C# pisze tylko dedykowane programy, ale nie można tego wiedzieć. Aha - i jeszcze jeden argument. Praktycznie dla każdej wymyślonej technologii, protokołu, api czy formatu istnieje implementacja w Javie. Jeżeli w ogóle istnieje w więcej niż jednym języku to istnieje w Javie. Jest to zazwyczaj kod dość dobrego standardu i wysokowydajny, często udostępniany przez producenta (Java jest językiem chętnie wspieranym bezpośrednio przez producenta technologii). Dlatego tak bardzo się sprzeczam, że Java nadaje się do integracji systemów. Co mi się jeszcze bardzo podoba w Javie to koncept SPI - service provider interface. Developerzy Java projektują tylko interfejsy różnych api, same implementacje natomiast dostarczane są niezależne. Po pierwsze projektowanie interfejsów bez kontekstu implementacji powoduje, że są one naprawdę wysokiej jakości. Zresztą wystarczy popatrzeć na jdbc, javaee czy javax.persistance. To wszystko to naprawdę są niesamowicie wysokiej jakości interfejsy, bardzo intuicyjne oraz "gibkie"(?). Dodatkowo ma się wolny wybór co do użytej implementacji (hibernate czy toplink, glassfish czy jboss etc). A poza tym sam proces tworzenia nowych JSR to chyba zapewnia - tworzony jest council z członkami (specjalistami) pochodzącymi z różnych firm którzy to naprawdę dobrze dopracowują. No i kompatybilność wsteczna. Można bez problemu kompilować programy nowym kompilatorem tak, żeby były kompatybilne ze starszą JRE. Na dodatek można nawet używać nowych elementów składniowych i kompilować programy do starego formatu binarnego (ojj - to się czasami naprawdę niesamowicie przydaje - jak się nagle okaże, że program ma działać również pod starszą wersją), bo ten język (technologia) jest po prostu niesamowicie dobrze zaprojektowany oraz zadbany. Przy tym osobiście naprawdę się tą technologią interesuje i po prostu za każdym razem jestem pod wrażeniem. Dokomentacja jaką tworzą "Java Language Specification" oraz oczywiście JavaDocs to też naprawdę przykład jak się takie rzeczy powinno robić. @batman: oczywiście edytory Javy też to potrafią. Zazwyczaj jeszcze zanim nadejdzie błąd kompilacji. Aha - i nie twierdze, że C# tego nie ma, ale chciałbym to poddać dyskusji. Ten post edytował Jabol 20.01.2009, 17:44:26 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 12:04 |