Kocham jego przenośność

Każdy, kto próbuje przekonywać, że C/C++ nie nadaje się do opracowania aplikacji dla biznesu - jest głupcem.

Każdy, kto próbuje przekonywać, że C/C++ nie nadaje się do opracowania aplikacji dla biznesu - jest głupcem.

Zacznijmy od tego, że aplikacje biznesowe przechodzą powoli z mainframe'a na komputery biurkowe i do systemów otwartych; unikając C będziesz miał spore trudności. Lubisz ten język czy nie, w tym środowisku jest to lingua franca.

Nasuwa się tu ważna uwaga. C jest językiem popularnym, przeszedł bardzo twardą drogę standaryzacji. Jest niesłychanie jednolity i przenośny w całym środowisku obliczeniowym. Trudno podać przykład chociaż jednego procesora o znaczącej wartości, na który nie ma kompilatora C. Nie ma takiego. Koniec historii.

Jako naturalny sukcesor C, język C++ odziedziczył jego cechy i jest oczywistym językiem przyszłości. Nawet jeśli nie korzysta się z jego cech obiektowych, C++ jest ulepszeniem właściwości C. Jest bardziej efektywny i bardziej odporny na błędy.

Jak to jest możliwe? Niektórzy uważają, że typy danych dopuszczalne w C dają im swobodę, inni zaś uważają to za anarchię. Nowe reguły kodowania w C++ stawiają programiście większe wymagania, zmniejszając możliwości błędów.

Oczywiście gdy korzystamy z obiektów mamy do dyspozycji standardowe typy danych, takie jak tekstowe ciągi znaków, zapełniające dziury w repertuarze C. Przy tym nie straciliśmy nic z imponującej szybkości wykonywania skompilowanych programów w C, ani dużych możliwości współpracy z systemem operacyjnym.

Co ta technologia znaczy dla każdej firmy? Po pierwsze - ogromne możliwości zatrudnienia ludzi znających ten język, gdyż zna go każdy absolwent informatyki. Nie ma potrzeby organizowania szkoleń w jakimś nieznanym języku.

Po drugie, C/C++ ma możliwości odpowiednie do każdego projektu. Modelowanie? Aplikacje z dziedziny baz danych? Przetwarzanie rozproszone? Analiza numeryczna? Cokolwiek jest potrzebne, C/C++ dobrze sobie radzi. Wystarczy spróbować zakodować skomplikowany interfejs użytkowy w Cobolu lub problem analizy numerycznej w Visual Basicu bądź PowerBuilderze, aby się o tym przekonać!

Ale to jeszcze nie wszystko. Istnieje znakomita paleta narzędzi wspierających dostępnych dla środowiska C/C++: edytory programów znające reguły tego języka, formatery kodu, debuggery, programy do sprawdzania zgodności ze standardem i przenośności itd.

A jeszcze nie powiedzieliśmy o właściwej sile C++, to jest o jego obiektowości. To nie przypadek, że C++ jest powszechnie stosowany do opracowania aplikacji obiektowych i cieszy się największym wsparciem producentów bibliotek. Język C++ ma wszystko: znakomite cechy, takie jak przeciążenie operatorów, wielokrotne dziedziczenie i wzorce - i to wszystko działa.

Są ludzie narzekający, że C++ jest zbyt skomplikowany. Lecz na to są dwie odpowiedzi. Po pierwsze, potrzeba więcej niż prostego narzędzia do rozwiązywania skomplikowanego projektu. Na przykład, w wielu firmach prowadzony jest projekt w Visual Basicu, w którym programiści korzystają z elementów niezależnych producentów.

Elementy te są skomplikowane do opracowania, ale dają duże możliwości przyspieszenia projektu. I na dodatek programista nie musi wiedzieć, jak one działają, aby używać ich efektywnie.

Ale można pomyśleć o klasach w C++ jako takich właśnie elementach, dających zwiększenie wydajności. No to zakupmy kilka bibliotek klas i używajmy ich!

Jednakże w przeciwieństwie do Visual Basicu będziemyz mieli możliwości rozszerzania i modyfikowania tych klas, tak aby działały zgodnie z zapotrzebowaniem.

Innym argumentem na zarzut zbytniej złożoności jest taki: pierwsze spotkanie z techniką obiektową jest zawsze trudne do momentu, aż do chwili, gdy zrozumie się mechanizmy jej działania. I można wtedy winić za to język. Trzeba sobie jednak powiedzieć jasno: uzyskanie dostatecznej wydajności jest wyzwaniem, niezależnie od używanego języka.

To wyzwanie jest mniejsze w przypadku języka C++ jeśli weźmie się pod uwagę dostępność znakomitych podręczników i materiałów szkoleniowych. Oczywiście zawsze można zignorować obiekty, schować głowę w piasek i czekać na emeryturę, mając nadzieję, że nie dostaniemy wcześniej wymówienia.

Przyjmując, że uświdamiamy sobie, iż obiekty pozostaną z nami na długo, to jaki jest najlepszy wybór? Jakaś trudna do rozeznania się mieszanina starych technologii, uzupełnionych o modne, firmowe narzędzia? Nic z tego. Język C++ jest dobrze usadowiony i ma możliwości dalszego rozwoju. Programiści w C++ wykonują obecnie największe projekty informatyczne.

W żadnym biznesie nie można ignorować ważnej technologii. We współczesnym świecie intensywnej konkurencji ważne jest korzystanie z najlepszych dostępnych narzędzi.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200