Jak znajomość wielu języków programowania wpływa na jakość kodu?

0

Hejka
Siedziałem sobie przed chwilą, marnując bezproduktywnie czas i naszła mnie taka myśl - wiele razy słyszałem, że znajomość wielu języków programowania otwiera oczy na świat, daje szersze spojrzenie na problem i ogólnie jest bardzo dobre. Sam osobiście znam lepiej lub gorzej kilka języków programowania, zarówno z tych zwykłych (C++, C#) jak i z tych niezwykłych (R, prolog) i zastanawia mnie, jak to wpływa na jakość mojego kodu i na sposób myślenia. Aktualnie jestem na trzecim roku studiów i zauważam u siebie postępy. Ciągle się uczę i piszę kod coraz bardziej czytelny, przemyślany i spójny. No ale wracając do pytania - w jaki sposób (waszym zdaniem) znajomość języków zupełnie sobie przeciwnych wpływa na jakość pisanego kodu (np. czy programowanie deklaratywne sprawia, że programowanie imperatywne będzie mi lepiej wychodzić)? Chodzi mi w tym przypadku o w miarę konkretne przykłady - czy pisanie różnych procedur i zapytań w SQLu ma szansę pozytywnie wpłynąć na jakość kodu pisanego w C++? Czy znajomość języka bardziej statystycznego/obliczeniowego (R, Python) ma szansę pomóc w pisaniu algorytmów? Ciekawi mnie punkt widzenia kogoś, kto kilka(-naście/-dziesiąt) lat siedzi w branży i ma na to takie "dorosłe" spojrzenie.

9

Bardziej chodzi o różne paradygmaty programowania, a nie języki. Poznanie paradygmatu funkcyjnego po paradygmacie obiektowym da dużo więcej niż poznanie C# po poznaniu Javy.

1

jw. od siebie dodam tyle ze mimo ze kazdy jezyk ma jakis tam sposob (lub po prostu framework) na osiagniecie tego samego co w innych, to dzieki znajomosci wielu z nich jest sie w stanie wybrac ten najbardziej odpowiedni. albo dostosowac technologie w ktorej pracujesz zapozyczajac idee z innych.

1

@Wibowit ma racje.
Dopowiem tylko że w drugą stronę też to działa. Mi osobiście sporo dało poznanie Asma, fajnie rozumieć jak to wszystko działa na niższym poziomie.

0

Bardziej chodzi o różne paradygmaty programowania, a nie języki. Poznanie paradygmatu funkcyjnego po paradygmacie obiektowym da dużo więcej niż poznanie C# po poznaniu Javy.

Można to rozszerzyć też na wzorce projektowe / architektoniczne.

Ktoś kto rozwiązywał różne problemy i robił różnego rodzaju programy, ten łatwo będzie mógł przemycić jakiś wzorzec projektowy / rozwiązanie architektoniczne z jednej domeny do drugiej (np. można przemycić rozwiązania poznane przy robieniu gier i zastosować je w aplikacjach biznesowych kompletnie z grami niezwiązanych).

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