Jestem studentem inżynierii mechanicznej zainteresowanym inżynierią lotniczą, gdzie, jak mi powiedziano, Fortran jest nadal powszechnie używany.
Którą wersję Fortran powinienem poświęcić na naukę?
Jestem studentem inżynierii mechanicznej zainteresowanym inżynierią lotniczą, gdzie, jak mi powiedziano, Fortran jest nadal powszechnie używany.
Którą wersję Fortran powinienem poświęcić na naukę?
Odpowiedzi:
To trochę popularne mylące określenie, że istnieje „wersja” Fortrana. Z rzadkimi wyjątkami najnowsze standardy Fortran (i kompilatory) zachowują doskonałą zgodność wsteczną ze starszymi standardami. Ma to dobry powód: niewiele osób użyłoby dziś Fortrana, gdyby nie duża ilość wciąż używanego kodu. Innymi słowy, zgodny z normami kod Fortran77 prawie zawsze będzie działał z najnowszymi kompilatorami.
Powinieneś nauczyć się korzystać z najnowocześniejszej dostępnej wersji języka. F2008 może nie dodał nic strasznego użytecznego dla początkującego, ale wprowadzenie koncepcji obiektowych w F2003 jest zdecydowanie dużą sprawą. „Modern Fortran Explained” to dobre miejsce do rozpoczęcia, a „Scientific Software Design: The Object Oriented Way” jest również całkiem dobre do nauki praktycznego zastosowania.
Pragmatycznie, jeśli zamierzasz pracować nad starszym kodem (powiedzmy F77 lub wcześniejszym), w pewnym momencie będziesz musiał nauczyć się niektórych rzeczy, które zrobili z powodu braku funkcji F90 +. Na przykład, jeśli piszesz dla czegoś kod Fortran, nigdy nie powinieneś używać tak zwanego „WSPÓLNEGO bloku”, ale niezmiennie zobaczysz, że pojawiają się w kodzie F77, którego możesz użyć.
Nigdy nie polecałbym, żeby ktoś zaczął pracować w Fortranie bez przynajmniej zestawów funkcji F90 / 95.
To powiedziawszy, jeśli nie znasz się dobrze na programowaniu w innym języku, prawdopodobnie uznasz, że Fortran nie jest najlepszym językiem do nauki jako pierwszym, nawet jeśli wybierasz się w kosmos. (I mówię to jako ktoś w kosmosie, który regularnie używa Fortranu i miał go jako mój pierwszy język).
Nie zgadzam się z obojgiem. C ++ i Python wciąż nie są tak zoptymalizowane jak FORTRAN. Zdecydowanie zgodziłbym się, że FORTRAN 90/95 jest minimum. Jednak zawsze przydatne jest użycie innych, bardziej nowoczesnych wersji. Wyzwanie związane z FORTRAN polega na tym, że jeśli nauczysz się go przed nauką języków obiektowych, łatwo to zrozumieć. O wiele trudniej jest się nauczyć, jeśli przyzwyczaiłeś się do myślenia za pomocą przedmiotów. Uczę tutaj klasy superkomputerowej i zmuszam moich uczniów do korzystania z FORTRAN. Zmusza ich do korzystania z innego rodzaju logiki w programowaniu. Nie podoba im się to, ponieważ nie „myśli” jak Python lub C ++. Wszystko sprowadza się do tego, co zamierzasz zrobić i ile ma znaczenia paraliżacja i wydajność.