Jump to content

Programmēšanas valodu salidzināšanas problēma


zeratuls
 Share

Recommended Posts

Sveiki!

Varat, man ieteikt, ar ko salīdzināt, un kādus parametrus izvēlēties.

Sakarā ar noslēguma darbu, esmu spiests salīdzināt 2-4 programmas.

Takā gala rezultatā atbildei jābūt c#, man jaatrod programmvalodas, kuras ir sliktakas, un jāpierāda kapēc.

Takā ir jābūt 2-3 lpp, domāju tabulāri mēģināt.

Varbut varat ieteikt ar ko salīdzināt. :)

Link to comment
Share on other sites

BASIC, PASCAL, JAVA, PHP

 

Sorry, kāds jautājums, tāda atbilde.

Labots - JDat
Link to comment
Share on other sites

un tu to nespēj uzrakstīt?

 

ir vesela rinda visvisādu argumentu, ar ko C# ir labāks par citām valodām, bet kāpēc bez 5 minūtēm diplomēts IT speciālists ar programmēšanas novirzienu to nespēj uzrakstīt no galvas?



Grūti iedomāties, kas ir tāds, ko Tu pats nevarētu nosaukt no galvas. 

 

 

Ok, ir Mono projekts un Xamarin, par kuriem Tu, iespējams, neesi dzirdējis. Bet nu "standartizēts freimvorks", "standartizēts GUI freimvorks", "daudz programmētāju", "vienota sertifikācija" utml argumentus nespēt uzrakstīt kā minimums 1 lapas apjomā un uzrakstīt, ko esi jau pieminējis un ko vēl ne - nu tas jau izskatās pēc "man te mājasdarbs, izpildiet, lūdzu". Un pats zini, kāda pret tādiem attieksme.

Link to comment
Share on other sites

zeratuls

Vienkārši neesmu tik labs specialists :)

Strādāju c# un neesu iedzilinajies ka ko sauc, iekšā, zinu ka ir funkcijas, metodes, un vel visa kā, bet ja man koda prasis iebakstīt kur ir funkcija, kur metode. Tas uz sitienu man bus imposible atbildēt.

Link to comment
Share on other sites

Vai vēl ir iespēja mainīt darbu tēmu un nesalīdzināt programmēšanas valodas? Objektīvs programmēšanas valodu salīdzinājums ir ārkārtīgi grūts, un to nevar veikt cilvēks, kam nav vismaz 10 gadu programmēšanas pieredzes. Labākajā gadījumā Tu vari savākt viedokļus no interneta un uztaisīt smuku statistiku. Vēl jo ļaunāk - 99% gadījumu nav iespējams pateikt "valoda A ir labāka/sliktāka par valodu B". Tās ir vienkārši citādākas. Tas būtu tāpat kā mēģināt salīdzināt mašīnas - kuras markas ir labākas un kuras sliktākas par Toyota? Tāpat arī daudzas valodas vienkārši ir speciāli pielāgotas konkrētiem uzdevumiem. Kas ir labāks - traktors vai ferrari? Atkarīgs no tā, vai Tu ar viņu gribi lauku uzart, vai sacensībās piedalīties, protams.

 

Ja nu nekādi citādāk - rekur vismaz viens cilvēks ir izkratījis sirdi par PHP. Vari iet pa punktam cauri un salīdzināt, kā tas ir C#. Lai arī, ja pat nespēj atšķirt funkciju no metodes, tad tas droši vien Tev arī būs kā Ķīnas ābece...

 

Nopietni, no visiem IT konceptiem, programmēšanas valodas kā tādas ir viens no vispiņķerīgākajiem. Tāpēc arī viņu ir tik daudz - katram šķiet, ka viņš var uztaisīt labāku...

Labots - Vilx-
  • Patīk 1
Link to comment
Share on other sites

Palasīju to sarakstiņu par C# un PHP. Sviests kaut kāds. Lai arī tikai par dažiem punktiem varēja teikt, ka tie ir klaji meli, tomēr par lielāko daļu bija izbrīnā jāsaceļ uzacis - "Nu, bet kāds TAM ir sakars ar valodas kvalitāti?"

 

Topika autoram, iespējams, šis saraksts tiešām ir labākais variants, kā iegūt apmierinošu atzīmi, taču kopsummā jāsaka - diezgan bezjēdzīgi.

Link to comment
Share on other sites

Baigais Janka

Es ar ieburkšķēšos, ka vispirms skaidri jānodefinē uzdevums, tikai tad kauču kādā līmenī var sākt runāt par realizācijai derīgajām valodām, un tad - kura ta labāka būtu. Savādāk - labākā C#... nu, khm, dzelžu draiverus man parakstīsi viņā? :)

Link to comment
Share on other sites

Baigais Janka

Visādi invalīdi iraid redzēti, bet es, kā cilvēks kurš programmē štelles, tā sacīt, mikrosekundes skaitot, šitos nopietni neuztveru :) Nevar tur nopietnu neko uztaisīt. Tas, ka kādam ienācis prātā, ka tas ir kruti, un tiek projekts bīdīts, vēl nenozīmē, ka tas ir lietojams. Varētu piemērus arī no pro technikas minēt, kas notiek, kad sāk šāda veida murgus ieviest, tik slinkums tagadiņās :)

Link to comment
Share on other sites

Jebko salīdzināt ir ļoti problemātisks pasākums. Galvenais te ir metodoloģija. Un tieši metodoloģija arī ir tas, pie kā piesieties darba kritiķiem un vērtētājiem. Atrast pareizo metodoloģiju un pierādīt, ka tā šajam izvēlētajam uzdevumam der nebūs viegli. Meklē citu tēmu.

Link to comment
Share on other sites

@@Baigais Janka, ai, takš neņem pierē. :) Tas ir tikai izpētes projekts, lai saprastu, vai to vispār var, un kas no tā sanāk. Tas jau 3 gadus netiek attīstīts, cik es saprotu.

Link to comment
Share on other sites

WildGun

Iebaksti guglē "CERN programming language" , un tad mēģini pierādīt C# vispārējo un neapšaubāmo priekšrocību. Kad izgāzīsies, palūdz pasniedzējam (?) sniegt pamatojumu retoriskajam (?) jautājumam.

Link to comment
Share on other sites

Aleksejs

Šim visam tik ļoti trūkst konteksta. Jo pat teiciens - "when all you have is a hammer - everything looks like a nail" - ir visai neprecīzs. Pat āmuri ir tik dažādi un izmantojami tik dažādiem mērķiem...

2lhn15adkdh8b44ofbup.png

4ntihm3yfzcvm9bcewv.png

 

Žetons, ja zini kad/kam/kuru izmantot.

Labots - Aleksejs
Link to comment
Share on other sites

Nu, pirmais WTF jau bija tas, ka C# (un citas valodas) sucks tāpēc, ka satur "goto". Bet, labi, tas varbūt vēl ir norakstāms kā gaumes jautājums.

 

Taču "Switches don't allow fall-through, but you still have to break." gan ir bulšits. Switches atļauj fallthrough pie nosacījuma, ka tie ir tukši. Tāpat ir iespējams arī explicit fallthrough ar "sliktā" goto palīdzību. Viss, ko C# aizliedz, ir implicit fallthrough, ja konkrētajā keisā ir kāds kods.

Labots - Vilx-
Link to comment
Share on other sites

Arnolds Piepe

 

Takā gala rezultatā atbildei jābūt c#, man jaatrod programmvalodas, kuras ir sliktakas, un jāpierāda kapēc.

:D Atļauj man skaļi smiet bārdā! Piekrītu visiem augšminētajiem - tas taču ir cirks gatavais... 
Link to comment
Share on other sites

es domāju, ka jāsāk ar QBasic <-> C# salīdzinājumu. 

Pēc tam var Fortran <-> C# pieķert ( vari muldēt tur ko gribi, tāpat neviens nepārbaudīs, jo Fortran ir kā dinozauri - daži dzirdējuši bet tie, kas reāli to rubī, paši ir fosilijas ).

 

Pēc tam salīdzini LOLCODE un C#. Tikai uzmanies - LOLCODE visiem var tik ļoti iepatikties, ka beigās sīšārps tam pakāsīs. 

Piemēram,

 

HAI
CAN HAS STDIO?
  PLZ OPEN FILE "LOLCATS.TXT"?
  AWSUM THX
    VISIBLE FILE
  O NOES
    INVISIBLE "ERRROR!"
KTHXBYE

 

Iedomājies - tādā kodēt visu dienu? :))))) Nu redz - un ja nu prezentēsi, ka ir tāds LOLCODE, tad visi telpā esošie programmētāji tā safanosies, ka sāks lauzt krēslus, apstrīdēs sīšārpa kā krutākās valodas statusu un paģērēs, lai tu vispār par tādu, pardon, sūdu, nemaz nerunā, ja pasaulē ir tik forša valoda kā LOLCODE. Un aizsūtīs tevi mājās un rezultātā būsi izgāzies ar savu sīšārpa slavināšanu. Tāpēc uzmanies pat ne-programmētāju auditorijā. Arī tur var slēpties kāds latentais LOLCAT cienītājs, fans, feinšmekers un pazinējs. Varbūt pat kāds būs komisijā? Tad ar Tevi būs cauri - pasludinās, lai to visu .NET Tu met miskastē, vairāk nepiemini. Tā ka uzmanies.

Link to comment
Share on other sites

 

Fortran ir kā dinozauri - daži dzirdējuši bet tie, kas reāli to rubī, paši ir fosilijas

 

Iespējams, ka programmētājam vulgaris tas tā arī ir, bet zinātniskajās aprindās, kur vēl joprojām izmanto 70-os gados rakstītos algoritmu un aprēķinu softus, pat maģistra grāda studentiņiem nākas šad tad paburties caur fortran kodu. 

Link to comment
Share on other sites

ieleja: cik esmu aizstāvējis diplomdarbus, tur klāt ir dažādi cilvēki. Gan kolēģi, gan komisija, gan dažādi pasniedzēji, gan vienkārši interesenti no vecākajiem kursiem.  Nekad nav bijis tā, ka saka "programmētāji - piecelieties, atstājiet telpu".



Pie tam aizstāvot dažādus diplomdarbus drīkst pat draugi (līdzjutēji) būt klāt. Tā ka pavisam reāls scenārijs :)

Link to comment
Share on other sites

nu .. atkarībā ko vēlies sagaidīt no tā studenta.  Ir jau dažādi līmeņi, un stāstīt, ja zina, var ilgi un dikti.

 

Teiksim, primitīvākais līmenis - vai cilvēks vispār iepazinies ar pielietojumu. Nu tur cik piemērots tas ir vebam/desktopam/zemam līmenim/mobilajām iekārtām. Kur var lietot, bet kur nav jēgas - piemēram, C++ vebā ir eksotika, bet uz mobilajiem tagad tieši atdzimst un NDK rauj pušu ADT daudz kur.

 

Tālāk - vai tauta taisa freimvorkus tam visam - ja jā, tad kādu nepilnību aizpildīšanai. MVC/WinAPI, piemēram, ilgu laiku bija piņķerīgi dotnetā izmantot. Super, ja zina, kādi well-known bugi ir tam visam/versiju nesavietojamības starp aplikācijām, cik ilgi projektam top prototipi salīdzinājumā ar citām lietām - piemēram, vai ir scaffolding utml lietas kādos freimvorkos vispār ir realizētas out-of-box.

Tālāk - jebkurā vidē kā ir GC realizēts - kā nostrādā uz daudzgigabaitu RAM serveriem, kā uz desktop iekārtām, vai nedēļām ilgi griežoties spēj savu atmiņu savaldīt vai norij gigabaitus un jākillo lai strādātu (java vs .NET vs interpretējamās valodas). Teiksim, .NET nav tik lielu problēmu kā javai. Vai reāli runtaims pēc specifikācijas nodrošina GC izsaukumu uzreiz vai arī smagi tas nostrādā. Te nu Java atkāpjas - tā spēj norīt daudz un nelaist vaļā un nekas nav garantēts pat pie GC izsaukuma.

Tālāk - visādu boost tipa libu eksistence visām dzīves situācijām, libu attīstība ilgtermiņā. Piemēram, savulaik bija "dll hell", bet .NET var sekot līdzi, kura versija tad tev sistēmā figurē. Java tās versijas ir definētas, bet var būt izkaisītas pa visurieni - WAR failā, appservera /libs direktorijā, JVM direktorijā kaut kur mētāties.  Pietrūkst tāda GAC kā c#. Un C# tomēr standartizēti uztur arī GUI un web freimvorka daļas, nevis kā javā, kur ik pa laikam kaut kas uzrodas, kaut kas izkrīt no modes un spēj tik laikus pārslēgties uz pavisam citu freimvorku un secināt, ka JSTL vairs nav modē, bet ir GWT, piemēram. C# tas viss tik ļoti neraustās.

tālāk - mobilās lietas. Mono/xamarin pielietojums, proprietory faktora eksistence - vai to bīda noteikta grupiņa vai ir nopietns community tam visam, kas nebalstās tikai uz monopolu/oligopolu. Te nu Xamarin, lai arī daudzsološs, tomēr pieklibo.

 

 Nu, tādā stilā dažus teikumus par katru pasakot, var ilgi un dikti stāstīt. Ja studentam tas ir bijis maizes darbs, tad pat prezentācijas 20..30min grūti iekļauties, neizraujot ko svarīgu starp šādām 2 valodām stāstot. Kur nu vēl trešo padziļināti piesaistot. Un diez vai kāds mēģinās par svešu valodu kaut ko stāstīt ;D

Link to comment
Share on other sites

Nez tikai, vai frameworku/bibliotēku/runtaimu salīdzinājums ir vietā, ja jāsalīdzina ir valodas. Protams, var jau teikt, ka plika valoda bez tā visa pārējā nav lietojama, taču darba tēma ir darba tēma... Derēja varbūt pārliecināties pie pasniedzēja.

Link to comment
Share on other sites

Леший

"C++ vebā ir eksotika, bet uz mobilajiem tagad tieši atdzimst un NDK rauj pušu ADT daudz kur."

---

Es teiktu, ka ne tikai mobilajos, bet arī desktop. Vienkārši dzelžiem vairs īpaši nav kur tālāk attīstīties, līdz ar to, vairs nevar kodēt visu ko uz hipstervalodām a-la Ruby, ir jāsāk domāt par koda efektivitāti.

Link to comment
Share on other sites

"C++" nav sinonīms "efektīvākam kodam". Tas ir sinonīms "kodam tuvāk pie metāla", bet tas nenozīmē obligāti efektīvāku.

Link to comment
Share on other sites

Vilx-: nu tad ko apcerēs students, ja izmetīs ārā pielietojumu, virtuālo mašīnu/runtaimu/libu/gc/koda ielādes un izpildes īpatnības, kur students var nodemonstrēt savu esošo vai neesošo educīciju?

 

 

Pliku sintaksi, vai? Nu diez vai - es kā programmētājs tādas lietas arī gribētu dzirdēt, nevis trulu, neko neizsakošu salīdzinājumu "javā lieto import, bet c# lieto using .. javā lieto for, bet c# ir foreach, tāpēc c# ir krutāks .. c# ir goto, tāpēc tas sūkā .."; Kam to vajag? Ķeksītim?

Link to comment
Share on other sites

Ir tomēr arī gana daudz atšķirību, kuras nav tikai sintaksē. Piemēram, java vs C#:

  • Properties (C# ir, Java nav)
  • Anonīmie delegāti un lambda izteiksmes;
  • Anonīmās interfeisu implementācijas;
  • Autoģenerētie iteratori ("yield return" iekš C#);
  • Virtual vs non-virtual defaulti (Java pēc defaulta viss virtual; C# pēc defaulta viss non-virtual);
  • Value tipu implementācija (Javā tie ir paši par sevi, C# tie inherito no System.Object);
  • Eventi;
  • Partial klases;
  • Aksesori (private/public/protected/internal) un to nozīmju atšķirības;
  • Utt.
Tās visas ir valodas fīčas, nevis bibliotēkas. Katrai valodai ir cita pieeja lietām, rezultātā katrā no šīm valodām ir lietas, kuras vieglāk darīt, ir lietas, kuras grūtāk darīt, un ir lietas, kurās vieglāk sapīties. IMHO par tām arī ir jārunā šajā tēmā. Labots - Vilx-
Link to comment
Share on other sites

  • 3 weeks later...
zeratuls

uhh thx :)

Paņemšu cik man vajag informācijas no šī visa :)

Problēma ka šo tēmu nemāz jau īsti neņēmu, galvenais MAIN uzdevums uztaisīt programmu, bet ir saturā daži punkti, kur piespiedu kārta, tomēr jāpierāda kapēc ši valoda un jāsalīdzina ar kādām.

+Paskaidrojiet kā var dažām programmam analoģisku programmu atrast salīdzināšanai ja tādas dabā nav. Es šo lietu atrisināju.

Bet mans kolēģis taisa programmu ar sensoriem, lai ceplis sūtītu SMS uz lietotāja mob, kad ko viņam vajag, vai ja notiek šaize :), un es nevaru iedomāties kur viņš internetā atradīs analogu ar ko salīdzināt un pierādīt ka viņa ir krutāks.

Link to comment
Share on other sites

Aleksejs

Nu vienmēr paliek variants pašam uzrakstīt gan FORTH, gan Ada, gan ASM, gan Java, gan COBOL, gan F un beigās izteikt verdiktu par to, kura valoda konkrētajā gadījumā izrādījusies kvalitatīvi un kvantitatīvi labākā.

Link to comment
Share on other sites

Izveido kontu, vai pieraksties esošajā, lai komentētu

Jums ir jābūt šī foruma biedram, lai varētu komentēt tēmas

Izveidot jaunu kontu

Piereģistrējies un izveido jaunu kontu, tas būs viegli!

Reģistrēt jaunu kontu

Pierakstīties

Jums jau ir konts? Pierakstieties tajā šeit!

Pierakstīties tagad!
 Share

×
×
  • Izveidot jaunu...