Kij w mrowisko :)

dział ogólny

Kij w mrowisko :)

Nowy postprzez pit56 » piątek, 22 maja 2015, 12:39

Ciekawi mnie na ile środowisko programistyczne, języki programowania (mnie interesuje głównie C++ i C#) i to co proponuje firma embarcadero jest konkurencyjne i nowoczesne w zestawieniu z produktami firmy microsoft (mam na myśli oczywiście visual studio).
Avatar użytkownika
pit56
Bladawiec
Bladawiec
 
Posty: 2
Dołączył(a): środa, 8 czerwca 2011, 09:50
Podziękował : 0
Otrzymał podziękowań: 0
System operacyjny: brak systemu
Kompilator: brak kompilatora
Gadu Gadu: 0
    Windows 7Chrome

Re: Kij w mrowisko :)

Nowy postprzez polymorphism » piątek, 22 maja 2015, 14:27

Czemu kij w mrowisko? Spodziewasz się jakiegoś flejmu? :D
C++ Reference - opis wszystkich klas STL-a i funkcji C.
Avatar użytkownika
polymorphism
Doświadczony Programista ● Moderator
Doświadczony Programista ● Moderator
 
Posty: 2156
Dołączył(a): piątek, 19 grudnia 2008, 13:04
Podziękował : 0
Otrzymał podziękowań: 200
System operacyjny: Windows 8.1
Windows 10
Linux Mint 21.1
Kompilator: Visual Studio
Visual Studio Code
MSYS2 (MinGW, clang)
g++
clang
Gadu Gadu: 0
    Windows 7Firefox

Re: Kij w mrowisko :)

Nowy postprzez pit56 » piątek, 22 maja 2015, 14:52

Nie o to chodzi ale sam kilka lat amatorsko "bawiłem się" produktami firmy embarcadero a ostatnio (z niechęcią) skłaniam się do produktów microsoft z jednego powodu. Gdyż gdyby chcieć szukać pracy dobrze by było znać jak powszechnie jest stosowana dana technologia. A niestety środowisko maicrosoftu moim skromnym zdaniem panuje na rynku.
Avatar użytkownika
pit56
Bladawiec
Bladawiec
 
Posty: 2
Dołączył(a): środa, 8 czerwca 2011, 09:50
Podziękował : 0
Otrzymał podziękowań: 0
System operacyjny: brak systemu
Kompilator: brak kompilatora
Gadu Gadu: 0
    Windows 7Chrome

Re: Kij w mrowisko :)

Nowy postprzez Mironas » piątek, 22 maja 2015, 15:02

Dołączam się do pytania.
Sam używam wyłącznie C++Buildera. Visual Studio nie znam. Kiedyś próbowałem go ugryźć ale wydał mi się dziwny i nielogiczny. Ale z uwagi na koszty upgreadu do nowych wersji znowu zastanawiam się nad przesiadką. Dlatego dopytam:
1. Czy w darmowych wersjach da się coś sensownego zrobić?
2. Jeśli wersja płatna - to która?
3. Jak w VC++ jest z dodatkowymi komponentami, czy jest odpowiednik darmowych i płatnych komponentów VCL?
4. Czy są dostępne takie rozbudowane paczki komponentów jak TMS albo TRichView/ScaleRichView
5. Czy są jakieś sensowne strony z poradami (jak np strony Cyfrowego Barona)? Nie chodzi o MSDN.
6. Jak tam wygląda tworzenie (przenoszenie?) aplikacji na inne platformy (iOS, Android)?
7. Co jeszcze trzeba uwzględnić przy przesiadce na VC++ ?

Wszystkie powyższe pytania w opcji dla pojedynczego programisty.

@polymorphism
Parę razy pisałeś, że ze względu na problemy z Builderem zmieniłeś IDE na VS. Możesz napisać coś więcej?
Avatar użytkownika
Mironas
Programista I
Programista I
 
Posty: 427
Dołączył(a): poniedziałek, 2 stycznia 2012, 19:02
Podziękował : 17
Otrzymał podziękowań: 61
System operacyjny: Windows 10
Kompilator: C++Builder 10.3 Rio
TMS Components Pack
Gadu Gadu: 0
    Windows XPChrome

Re: Kij w mrowisko :)

Nowy postprzez polymorphism » piątek, 22 maja 2015, 19:23

@pit56, a skąd ta niechęć do VS?

@Mironas:
  1. Oczywiście. Choć nie spodziewaj się "klikania" takiego jak masz w C++ Builderze
  2. Ta, na którą będzie Cię stać. Sprawdź sobie na początek darmowe wersje Express lub Community -> https://www.visualstudio.com/en-us/prod ... ty-vs.aspx
  3. Jeśli chcesz pisać w czystym C++, to tutaj żadnych komponentów nie ma, bo to nie jest środowisko RAD dla tego języka. Możesz użyć zewnętrznych bibliotek GUI, takich jak Qt czy wxWidgets. Obie te biblioteki mają lepsze lub gorsze kreatory. I co najważniejsze - obie są darmowe.
  4. zajrzyj na strony obu wspomnianych bibliotek i zobacz, czy są tam kontrolki, które Cię interesują.
  5. W przypadku bibliotek GUI są strony teamów, które je rozwijają.
  6. Nie wiem.
  7. Zapomnieć o wszystkich przyzwyczajeniach związanych z C++ Builderem ;) Będzie więcej dłubania, kompilowania/dołączania obcych bibliotek, ale takie jest realne programowanie w C/C++ (czy się to komuś podoba czy nie).

Jeszcze odnośnie odpowiedzi na trzecie pytanie. Jeśli nie dbasz o przenośność i czystość C++, wtedy możesz pisać w C++/CLI. Dzięki temu będziesz miał możliwość tworzenia GUI przy pomocy bibliotek .NET, a co za tym idzie używać wbudowanego kreatora. Szczerze mówiąc nie wiem, jaka jest przyszłość tego języka, ale wydaje mi się, że jeśli już korzystam z bibliotek .NET, to lepiej pisać w C#.

Co do mojego przejścia na VS. Tu nie chodziło tylko jakieś konkretne problemy z builderem, choć oczywiście te były. Ale głównie uwierało mi to, że kod był totalnie nieprzenośny - tylko C++ builder i tylko windows. Moją decyzje o przejściu przyśpieszyło także to, że przyszłość ówczesnego Borland C++ Buildera była bardzo niepewna (to chyba dekadę temu było :P), więc uznałem, że inwestowanie czasu w coś, co nie ma przyszłości nie ma sensu.
C++ Reference - opis wszystkich klas STL-a i funkcji C.
Avatar użytkownika
polymorphism
Doświadczony Programista ● Moderator
Doświadczony Programista ● Moderator
 
Posty: 2156
Dołączył(a): piątek, 19 grudnia 2008, 13:04
Podziękował : 0
Otrzymał podziękowań: 200
System operacyjny: Windows 8.1
Windows 10
Linux Mint 21.1
Kompilator: Visual Studio
Visual Studio Code
MSYS2 (MinGW, clang)
g++
clang
Gadu Gadu: 0
    Windows 7Firefox

Re: Kij w mrowisko :)

Nowy postprzez Mironas » piątek, 22 maja 2015, 19:53

Dzięki za odpowiedź, ale chyba mnie nie zachęciłeś.
Bardzo odpowiada mi budowanie aplikacji oparte na komponentach VCL (wizualnych i niewizualnych). Jeśli chodzi o "czystość kodu" to jak uczy Latający Potwór Spaghetti "czystość jest ważna w przypadku wody pitnej" ;)

Gorzej z przenoszeniem aplikacji. Ale mnie interesuje tylko środowisko Windows i ewentualnie w przyszłości Android. A w przypadku tego ostatniego nie liczę na przenośność kodu. Wystarczy jeśli w środowisku da się napisać coś sensownego od podstaw. W nowych wersjach RAD Studio już jest możliwość pisania na Androida - tylko nie wiem czy jest to coś warte, no i raczej nie ma co liczyć na porządną dokumentację. Ostatecznie pozostanę przy XE i zacznę się uczyć Android Studio.
Avatar użytkownika
Mironas
Programista I
Programista I
 
Posty: 427
Dołączył(a): poniedziałek, 2 stycznia 2012, 19:02
Podziękował : 17
Otrzymał podziękowań: 61
System operacyjny: Windows 10
Kompilator: C++Builder 10.3 Rio
TMS Components Pack
Gadu Gadu: 0
    Windows XPChrome

Re: Kij w mrowisko :)

Nowy postprzez lukagrom » wtorek, 26 maja 2015, 09:08

Co do tych komponentów wg mnie środowisko Visual Studio ma tego na pewno więcej. Sam dłubię w wersjach Expres Edition tj takich, że jak się zarejstrujesz masz soft (nieco okrojony) za darmo, do wykorzystania komercyjnego za free. Czy da się coś sensownego zrobić? Zależy kto w czym się specjalizuję, dla mnie to środowisko idealnie nadaje się do tworzenia wszelakich programów magazynowych/obliczeniowych z wykorzystaniem baz danych . Poza tym lubię grafikę wektorową, a tutaj też można się "porealizować". Jeśli chodzi o przenośność to wersja komercyjna umożliwia przenoszenie aplikacji do Windows Phone. Składnia C++/CLI do najprzyjemniejszych nie należy, ale dużo podobieństw jest w przypadkach metod obsługujących komponenty C++ Buildera(->text,->items,->add,->font etc.). Też byłem fanem C++ Buildera, ale ten cennik i sprinterskie wydania kolejnych wersji to nie na moje hobbystyczne dłubanie. Mam za darmo przyjazne środowisko, z literaturą dostępną księgarniach i pomocą w sieci, które daje sporo możliwości. Jednakże mam wrażenie, że to Microsoft, ciągnie trochę na siłę wersję z C++, bo dla niego priorytetem z pewnością jest C#.
Avatar użytkownika
lukagrom
Bladawiec
Bladawiec
 
Posty: 37
Dołączył(a): wtorek, 1 stycznia 2013, 14:54
Podziękował : 6
Otrzymał podziękowań: 0
System operacyjny: Windows Vista
Kompilator: C++ Builder 10.1 Starter
Gadu Gadu: 0
    Windows VistaChrome

Re: Kij w mrowisko :)

Nowy postprzez polymorphism » wtorek, 26 maja 2015, 09:18

Jednakże mam wrażenie, że to Microsoft, ciągnie trochę na siłę wersję z C++, bo dla niego priorytetem z pewnością jest C#.

A w czym mieliby pisać sterowniki i inne składniki swojego systemu?

Jeśli chodzi o "czystość kodu" to jak uczy Latający Potwór Spaghetti "czystość jest ważna w przypadku wody pitnej" ;)

Nie chodzi o czystość kodu, tyko o czystość języka, a ta jest ważna jeśli zależy ci na przenośności między kompilatorami czy platformami systemowymi.
C++ Reference - opis wszystkich klas STL-a i funkcji C.
Avatar użytkownika
polymorphism
Doświadczony Programista ● Moderator
Doświadczony Programista ● Moderator
 
Posty: 2156
Dołączył(a): piątek, 19 grudnia 2008, 13:04
Podziękował : 0
Otrzymał podziękowań: 200
System operacyjny: Windows 8.1
Windows 10
Linux Mint 21.1
Kompilator: Visual Studio
Visual Studio Code
MSYS2 (MinGW, clang)
g++
clang
Gadu Gadu: 0
    LinuxChrome

Re: Kij w mrowisko :)

Nowy postprzez lukagrom » wtorek, 26 maja 2015, 10:04

Pierwsze wrażenie może być negatywne, zwłaszcza, gdy się zauważy dziwaczne podejście do dynamicznego tablicowania (nijak nie pasujące do tradycyjnej konstrukcji new-delete) , oraz trochę czasu trzeba będzie spędzać na głownie anglojęzycznych poradach, co zrobić, aby char,string sprężyć do dziwacznej klasy String^, która jest najważniejszą w tym środowisku. Z polskich stron, to na pewno nie ma odpowiednika poradnikowego via Cyfrowy Baron, chyba najbardziej pomocne jest forum ogólne na elektrodzie. Poza tym idzie się przyzwyczaić, jak na darmochę, to naprawdę jest dużo.
Avatar użytkownika
lukagrom
Bladawiec
Bladawiec
 
Posty: 37
Dołączył(a): wtorek, 1 stycznia 2013, 14:54
Podziękował : 6
Otrzymał podziękowań: 0
System operacyjny: Windows Vista
Kompilator: C++ Builder 10.1 Starter
Gadu Gadu: 0
    LinuxChrome

Re: Kij w mrowisko :)

Nowy postprzez Mironas » wtorek, 26 maja 2015, 10:08

polymorphism napisał(a):Jeśli chcesz pisać w czystym C++, to tutaj żadnych komponentów nie ma, bo to nie jest środowisko RAD dla tego języka.


lukagrom napisał(a):Co do tych komponentów wg mnie środowisko Visual Studio ma tego na pewno więcej.


No to jak w końcu jest z tymi komponentami?

A jeśli decydował bym się na przesiadkę z C++Buildera na VS to raczej zostać przy C++ czy od razu uczyć się C# ?
Avatar użytkownika
Mironas
Programista I
Programista I
 
Posty: 427
Dołączył(a): poniedziałek, 2 stycznia 2012, 19:02
Podziękował : 17
Otrzymał podziękowań: 61
System operacyjny: Windows 10
Kompilator: C++Builder 10.3 Rio
TMS Components Pack
Gadu Gadu: 0
    Windows XPChrome

Re: Kij w mrowisko :)

Nowy postprzez lukagrom » wtorek, 26 maja 2015, 12:22

Ściągnij sobie Visual C++ EE. Zrób jakiś kalkulator, menadżer plików, pobaw się wątkami, grafiką, poklikaj w opcjach projektów i zobacz co środowisko oferuje i jak się w tym czujesz. Jak to ma być zniechęcenie, to nie ma sensu na siłę w tym trwać, lepiej robić cokolwiek w czymś co się lubi.
Avatar użytkownika
lukagrom
Bladawiec
Bladawiec
 
Posty: 37
Dołączył(a): wtorek, 1 stycznia 2013, 14:54
Podziękował : 6
Otrzymał podziękowań: 0
System operacyjny: Windows Vista
Kompilator: C++ Builder 10.1 Starter
Gadu Gadu: 0
    Windows VistaChrome

Re: Kij w mrowisko :)

Nowy postprzez polymorphism » wtorek, 26 maja 2015, 12:34

@Mironas: Wydawało mi się, że napisałem to w miarę jasno. Visual C++ to środowisko dla języka C/C++, ale z racji tego, że powstał C#, a wraz z nim biblioteka GUI, twórcy visuala stwierdzili, że dobrze by było ożenić C++ i .NETowe WinForms. Dlatego dodali rozszerzenie do C++, które umożliwia korzystanie z biblioteki pisanej pod C# (to tak jak w przypadku C++ Buildera i VCL (delphi) ). To rozszerzone C++ nie różni się jedynie paroma składniowymi dodatkami, kod C++/CLI jest (częściowo) kodem zarządzanym, czyli tak samo jak w C# wymaga środowiska uruchomieniowego. Szczerze mówiąc nie wiem, jak wygląda sprawa z "komponentami", ale jeśli jest graficzny edytor okienek, to i powinno być coś, co rozszerza możliwości tegoż edytora.

Oczywiście w VC możesz wyłączyć rozszerzenie i wtedy piszesz w standardowym C++, bez .NETowych bibliotek. W tym wypadku musisz sam zadbać o jakąś bibliotekę GUI (choć nie wiem jak wygląda sprawa z MFC). Tu wspomniałem o dwóch bibliotekach - wxWidgets i Qt. Choć teraz przypomniało mi się, że Qt ma swoje własne IDE - Qt Creator.

Co do języka C#. Jeśli chcesz na dłużej posiedzieć przy platformie .NET, bardziej skupiłbym się na tym języku.
C++ Reference - opis wszystkich klas STL-a i funkcji C.
Avatar użytkownika
polymorphism
Doświadczony Programista ● Moderator
Doświadczony Programista ● Moderator
 
Posty: 2156
Dołączył(a): piątek, 19 grudnia 2008, 13:04
Podziękował : 0
Otrzymał podziękowań: 200
System operacyjny: Windows 8.1
Windows 10
Linux Mint 21.1
Kompilator: Visual Studio
Visual Studio Code
MSYS2 (MinGW, clang)
g++
clang
Gadu Gadu: 0
    Windows 7Firefox


Powrót do Ogólne problemy z programowaniem

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 14 gości

cron