Zarobki programisty C#

0

Ad. 6. Jednak się da http://symfony.com/doc/current/cookbook/security/acl.html Na swoje usprawiedliwienie powiem, że w PHP już mało programuje, a Symfony2 znam słabo ;)

0

W PHP ORM-ów to jest do wyboru do koloru, ale LINQ też jest (sam nie stosowałem):

0

Połowa miodności Linq polega na tym, że jest statycznie typowane. To coś działające za pomocą eval jest mało śmieszną imitacją.

2
Mr Obvious napisał(a):

Wygląda jak rozwiązywanie "problemów" C#, w PHP niepotrzebne

To nie jest rozwiązywanie problemów C#, tylko moja złośliwość, że pytam się o tak skomplikowane rzeczy jak typy, których w PHP nie ma.
Mając silnie typowany widok powiązany z konkretną klasą modelu, mam jasno zdefiniowany kontrakt między tymi dwoma elementami, dokładnie wiem, do czego mam mieć dostęp w widoku i co obsłużyć. Działa mi podpowiadanie, więc zawsze wiem, jakie właściwości modelu mam dostępne po stronie widoku. Jeśli coś sknocę, to będę miał podkreślone błędy.
A poza tym, mogę sobie wygenerować kompletny zestaw stron (lista obiektów, szczegóły, edycja, tworzenie) wraz z kontrolerem, jedynie na podstawie klasy modelu.

No, ale na szczęście, C# obsługuje też dynamiczne typowanie, więc można robić widoki w stylu PHP, wrzucając obiekt ujwiejakiego typu i bawiąc się w zgadywanie, co on zawiera. Tyle, że jak w C# zechcę się odwołać do nieistniejącego pola, to i tak dostanę błąd kompilacji, najpóźniej na poziomie renderowania strony. A w PHP?

Co to ma do języka? Tak, jak widok jest w PHP, ale ogólnie widoki w PHP są passe i używa się różniastych języków szablonów

...
W C# też się nie robi widoków przecież. Masochiści używają w tym celu WebFormsViewEngine (wstawki kodu w tagach <% %>, czasami <%= %>), trzeźwi ludzie Razora (wstawka kodu zaczyna się małpą, końca się sam view engine domyśli).

Co do walidacji:

// src/Acme/BlogBundle/Entity/Author.php
use Symfony\Component\Validator\Constraints as Assert;

class Author
{
    /**
     * @Assert\NotBlank()
     */
    public $name;
}
public class Author
{
    [Required]
    public string Name { get; set; }
}

Gdzie jest mniej pisania? Co da szybszą informację o błędzie w przypadku literówki?

Zależnie od użytego języka szablonów, od includowania po dziedziczenie.

Chodziło mi bardziej o to, jak to praktycznie wygląda.
W ASP.NET jeśli mam jakiś współdzielony widok, to renderuję go tak:

@Html.Partial("NazwaWspóldzielonegoWidoku", Model.JakaśtamWłaściwość)

Jeśli zaś w odpowiednim katalogu umieszczę silnie typowany widok (tak, wiem, znowu jestem złośliwy) o nazwie takiej jak nazwa klasy (przepraszam), to po prostu robię tak:

@Html.EditorFor(model => model.WłaściwośćTegoTypu)

co wygląda tak samo, jak w przypadku prostych typów danych.

http://symfony.com/doc/current/book/security.html

Widzę, że domyślnie definicję autoryzacji umieszcza się w oddzielnym pliku konfiguracyjnym, po zainstalowaniu modułu można użyć tych superaśnych adnotacji zawartych w komentarzach. Więc mamy ten sam problem, co w przypadku walidacji.

nie wiem czy tak się da out of the box, pewnie to trzeba implementować samemu
Ad. 6. Jednak się da http://symfony.com/doc/current/cookbook/security/acl.html

Czyli samemu. :) Jak w ASP.NET, ilość kodu też mniej więcej podobna.

można SQL, można ORM i nie, nie ma boskiego LINQa

No właśnie widzę, że trzeba pisać w jakimś SQLpodobnym języku albo składać zapytania przy użyciu metod, ale nazwy relacji i kluczy podawać z palca. Smutne. :(

Standardowo sesje są przechowywane w plikach, oczywiście że można to zmienić

No tak, pliki. Miejsce przechowywania danych każdego profesjonalnego programisty.
Ale w /dev/null czy /dev/random? :D

To Symfony nie wygląda może tragicznie, wygląda na pewno lepiej niż kod PHP pisany przez większość klepaczy tego języka, ale ja nie sądzę, żeby oni byli w ogóle w stanie objąć rozumem framework, który wymusza na nich jakąś strukturę kodu i oddzielenie PHP od HTML. Prawdziwy koder PHP potrafi stworzyć kod phpowy w każdym języku. ;P
Ale to nadal stringly typed programming. Adnotacje do walidacji i autoryzacji to stringi, nazwy relacji i kolumn w ORM to stringi, urle akcji z kontrolerów to też stringi. Czyli od cholery miejsc, w których można zrobić literówki.

Do niektórych nie dociera, że liczą się też biznesowe aspekty w wyborze technologii. PHP ma wiele zalet dla małego biznesu, tani i łatwo dostępni programiści, tani hosting, szybkie prototypowanie.

No ja jestem ciekaw, kiedy wreszcie do niektórych dotrze, że małe aplikacje i szybkie prototypy można także w ASP.NET. Nawet szybciej, bo język jest literówkoodporny. Że proste projekciki można pisać w zasadzie jednowarstwowo i tragedii nie będzie. A do tego jest sporo mechanizmów (atrybuty, LINQ, silne typowanie), które pomagają w pracy, a których w PHP nie ma. Więc gdzie tu przewaga PHP?

Co do aspektów biznesowych, to jasne, że pod względem stron w rodzaju "stoisko warzywne na targu miejskim babci Józi" na darmowym hostingu PHP nie ma sobie równych. Ale jeśli firma i tak ma już swój wewnętrzny serwer, to nie ma większego problemu postawić intranetową aplikację napisaną nie w PHP.

0

A ja jestem ciekaw kiedy wreszcie firmy takie jak: Accenture czy Asseco przestaną używać ASP.NET WebForms i przesiądą się na ASP.NET MVC.

3

Temat wątku nosi nazwe zarobki proramisty więc pozwólcie ze na chwile odniose się do niego.
na stronie 25 pisałem o swoim problemie z zarobkami. Dzisiaj pragne poinformowac zainteresowanych ze cuda się zdarzają. Poieważ z biura odeszło kilka osob firma postanowiła zrobić przegląd zarobków wszystkich programistów. Nieoczekiwanie, bez zadnej zapowiedzi ani prośby z mojej strony dostałem podwyżke z 3550(2550netto) do 4800(3400netto). Pracuje w .net, asp, vb, C# od listopada 2011, wcześniej na studiach visual studio nawet nie widziałem. Wniosek więc jest taki że trzeba się cenić bo firmę stać (zwłaszcza jak z zagranicznym kapitałem) a jak twierdzi że nie stać to jest wiele innych ofert.

0

Z moich obserwacji wynika tak w ogóle, że ofert pracy dla programistów Java jest niestety ZNACZNIE więcej niż dla programistów C# :(

0
wiewiorek napisał(a):

Z moich obserwacji wynika tak w ogóle, że ofert pracy dla programistów Java jest niestety ZNACZNIE więcej niż dla programistów C# :(

w Polsce tak, za granicą np. w UK już .NET przewaza

0

Jak myslicie ile trzeba miec doswiadczenia zeby starac sie o prace w uk lub slac cv do us lub australi liczac na vise sponsorowana i nie narobic sobie wstydu

0

Somekind napisał, że "trzeźwi ludzi używają Razora" - ja bym ujął to inaczej - ludzie, którzy nie myślą używają systemów szablonów. Ja jestem zaciekłym wrogiem używania szablonów!!! Dla mnie mają one same wady, a widać to najlepiej na przykładzie Smarty i PHP:
-PHP czy C# znakomicie sprawdzają się jako systemy szablonów, a dodatkowo pozwalają uzyskać najlepszą wydajność,

  • dałem kiedyś webmasterowi do obróbki kod napisany z wykorzystaniem Smarty, a ten część rzeczy pousuwał, po czym dodał 'weź ty lepiej daj mi następnym razem kod z PHP, bo tam przynajmniej od razu widać czego mam nie ruszać',
  • systemy szablonów pociągają za sobą konieczność nauki nowego języka,
  • w systemach szablonów nie sposób zrealizować wszystkich funkcji, dawno temu używałem już Smarty, ale miałem parę problemów, np. chyba chciałem wyświetlić tekst, w którym znaki nowej linii byłyby zamieniane na
    więc trzeba było tworzyć plugin czy coś w tym stylu,
  • ilość kodu napisanego przy wykorzystaniu tradycyjnego języka programowania i przy użyciu systemu szablonów jest niemal identyczna.

Dla mnie systemy szablonów nie mają żadnych zalet.

0

Systemy szablonów mają swoje wady (m.in. takie jak wymieniłeś) ale mają wielką zaletę, czyli: odseparowanie części prezentacyjnej od logiki aplikacji. Dzięki temu taki kod może być bardziej przenośny oraz łatwiej rozdzielić pracę w zespołach w których są frontendowcy i graficy. Ponadto wydaje mi się, że frontendowcy i graficy szybciej opanują prosty system szablonów niż nauczą się języka programowania, który sam w sobie może być językiem szablonów.

0

Z tego co czytam to firmy używają raczej Web Forms niż MVC. A jak jest w aplikacjach desktopowych? Czy raczej WinForms czy może przechodzą na WPF i warto się tego uczyć? Czy jest możliwe zostać tylko programistą aplikacji desktopowych (Windows Forms / WPF) i nie ruszać Web Forms czy raczej wymagają i tego i tego?

0

Zależy gdzie. Np. jak pracowałem w ABB to znajomość Formsów nie była potrzebna bo w WPF robili swoje projekty. Ale to akurat ten dział, nie wiem jak w innych.

1
wiewiorek napisał(a):

Somekind napisał, że "trzeźwi ludzi używają Razora"

Wyjąłeś zdanie z kontekstu, chodziło mi o to, że trzeźwi ludzie, korzystając z ASP.NET MVC, używają Razora, a nie WebFormsViewEngine (aspx), bo wymaga mniej pisania, więc jest czytelniejszy i wygodniejszy.

ja bym ujął to inaczej - ludzie, którzy nie myślą używają systemów szablonów. Ja jestem zaciekłym wrogiem używania szablonów!!!

To wspaniale, że jesteś wrogiem PHP, ASP.NET i JSP pewno też. No cóż, wszyscy, którzy korzystają z tych technologii są bezmyślni, na całym świecie zostałeś już chyba jedynym, wspaniałym, myślącym, inteligentnym człowiekiem. Gratuluję!

-PHP czy C# znakomicie sprawdzają się jako systemy szablonów, a dodatkowo pozwalają uzyskać najlepszą wydajność,

C# się nie sprawdza jako system szablonów, bo nim nie jest. To jest język programowania. Nie wiem o czym piszesz, nie wiem czy się na tym zupełnie nie znasz, czy po prostu Ci się coś pomerdało, ale sensu to nie ma żadnego.

Nie wiem też, czemu najpierw przywołujesz mój cytat o ASP.NET, a potem jedziesz po jakimś Smarty.

Dla mnie systemy szablonów nie mają żadnych zalet.

To może weź i wytłumacz mi jak wygenerować dynamicznie stronę www nie stosując systemu szablonów? Sklejanie stringa w całości albo renderowanie tagów po kolei po stronie serwera? I to niby będzie łatwiejsze dla grafików i frontendowców?

0

Nawet jak się stosuje MVC to warto zastosować szablony, dzięki temu kod frontendowy jest w jednym miejscu a nie rozproszony pomiędzy różne "ciekawe" i "inteligentne" funkcje.

0

Witam,
Jak w tytule.
Pracuję na stanowisku Programista C# w branży bankowej (częściowo branża powiązana jest z domem maklerskim) dla firmy zagranicznej.
Placówka działu IT mieści się na śląsku (ja przyjezna pyra z pod Poznania :) ).
Moja stawka zarobków brutto to 5500 PLN (niecałe 3900 na rękę).
Dodatkowe benefity to prywatna placówka zdrowia + ubezpieczenie.
Moje Doświadczenie

Przez pierwszy rok programowanie w c# dotyczyło updatów na aplikacjach wewnętrznych

  • dodawanie nowych funkcjonalności, logiki,
  • implementacja silników obliczeniowych,
  • tworzenie dokumentacji + unit tests.
    Ogólnie posiadam 3 lata doświadczenia.
    Lecz w ostatnim roku zamiast programować w C# to dostaje zlecenia tworzenia raportów(SSRS) i dokumentacji.
    Z tego powodu czuję się jakbym się cofał w rozwoju. Czasem zdażają się bugi do poprawienia kilku linijek kodu i to na tyle jeśli chodzi o programowanie.
    Chciałem zostać programistą c#/.net a więcej siedze w SQLu.
    Firma nie oferuje żadnych dodatkowych kursów, możliwości podnoszenia kwalifikacji.
    Czuję jakbym się cofał a nie rozwijał. Rozmawiałem z dwoma kolegami z pracy, którzy mają 2 lata stażu(rok mniej niż ja) ich stawka to 4800 brutto, no i też wyrazili swoje niezadowolenie.

Dlatego postanowiłem zadać kilka pytań:
Czy 3900 pln na rękę za 3 lata doświadczenia jest adekwatnym wynagrodzeniem?
W imieniu kolegów: czy 3400 pln na rękę za 2 lata doświadczenia jest dobrym wynagrodzeniem w tej branży?
Czy warto zostawać w firmie, w której nie widzę szans na rozwój ?

Pozdrawiam i dzięki za poświęcenie uwagi.

0

Na podstawie własnych doświadczeń, zarobków a także tematu Ile zarabiacie? (przeglądnij sobie) uważam że mógłbyś zarobić sporo więcej (zwłaszcza na B2B - ale ja nie wierzę w nasz system emerytalny, jeśli masz inaczej to spoko). Twoi koledzy też nie zarabiają najlepiej. Tylko, że to może być specyfika lokalizacji. Ja na Podkarpaciu też nie zarabiałem za dobrze i nie można tam było na takie zarobki liczyć.
Do tego, na podstawie tego co mówisz, uważam, że powinieneś zmienić firmę ze względu na obowiązki albo dostać nowe-stare programistyczne.

Opcje:

  • Jeśli chcesz zostać w obecnej firmie - negocjuj nie tylko podwyżkę ale i zakres obowiązków.
  • Jeśli zmiana firmy wchodzi w grę - możesz przenieść się czy to do bliskiego Krakowa czy innego miasta (np Wrocław, Warszawa) - jeśli relokacja wchodzi w grę lub spróbować pracy zdalnej. Na pewno wynegocjujesz lepsze warunki i finansowe i zakres obowiązków Ci będzie bardziej odpowiadał.
0
Hary napisał(a):

Czy warto zostawać w firmie, w której nie widzę szans na rozwój ?

Chyba sam odpowiedziałeś na to pytanie: jeżeli ani się nie rozwijasz ani nie płacą zbyt dobrze, to nie widzę sensu siedzenia w takiej firmie.
Mam obecnie podobną sytuację z tym, że zarobki wyższe i przyznam szczerze, że chyba żadne pieniądze nie wynagrodzą nudy w pracy i braku ciekawych projektów.

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