Novell zveřejnil Mono 1.0 - open source variantu .NET

Diskuze čtenářů k článku

abc  |  01. 07. 2004 12:00  | 

...neobsahuje podporu pre COM... mohol by to niekto znaly vysvetlit??

preco by mal podporovat COM na linuxe??

Souhlasím  |  Nesouhlasím  |  Odpovědět
peto  |  01. 07. 2004 12:31  | 

co sa tyka COM-u tak podpora by umoznovala spustit cast/ alebo cely program v ramci ineho. Na co je to dobre ActiveX a teda hlavne sirenie virusov/ trojskych  koni/ cervov apod. ale su aj dobre veci ale to skor na baze DCOM-u, spustit cast vypoctu na inom pocitaci v sieti, bez toho aby o tom jeho uzivatel vedel, automaticky update apod. .NET je nieco co ma dobre a nema zle stranky DCOM-u 

Souhlasím  |  Nesouhlasím  |  Odpovědět
abc  |  01. 07. 2004 13:38  | 

dikes za odpoved...

ja som sa chcel skorej spytat, naco by nam bola podpora COM na linuxe, ked komponenty COM spojazdnim len na win32, nie?

DCOM si viem predstavit, ale zeby som FlexGrid spojazdnil na linuchovi, tak to hadam ani nie ;)

Souhlasím  |  Nesouhlasím  |  Odpovědět
Jirka  |  01. 07. 2004 22:11  | 

je tam nekde ze OpenSource = Linux??? smarja??

Souhlasím  |  Nesouhlasím  |  Odpovědět
mato  |  02. 07. 2004 01:18  | 

to s tym COM je blud, autor nerozumie, co je vlastne cielom MONO projektu.. podpora COM nie je vobec pre MONO dolezita... v zasade linoxova komunita vidi vyhody jazyka C# a frameworku a snazi sa spravit tu istu vec, ale pod Linuxami a Macs minimalne... tj. linuxaci mozu svoje aplikacie programovat pre MONO, ale to este neznamena, ze budu ficat na windowsoch, pretoze obe frameworky budu trocha odlisne a niekolkych namespacoch a okrem toho namespace System.Windows.Forms nebude plne kompletny na linuxoch nikdy.. preto MONO robi wrapper pre GTK kniznice pod nazvom GTK#.. teoreticky ak sa ale pise aplikacia v managed code, tak by mala teoreticky behat na vsetkych platformach, ale na to si este taky rok pockame.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Kmotr  |  01. 07. 2004 14:48  | 

Prosím o rozvedení myšlenky:
"Pochopitelně také čelí patentové válce ze strany Microsoftu".

Souhlasím  |  Nesouhlasím  |  Odpovědět
Tomáš Holčík  |  01. 07. 2004 15:38  | 

Tím. že Mono kopíruje .NET, který je uzavřený a chráněný patenty, se logicky vstavuje riziku, že Microsoft některé části bude vnímat jako porušování vlastního intelektuálního vlastnictví a také se tak děje.

Souhlasím  |  Nesouhlasím  |  Odpovědět
abc  |  01. 07. 2004 16:20  | 

...a o ktore casti sa jedna?? ani sa mi nechce verit, ze by islo o systemove kniznice!

Souhlasím  |  Nesouhlasím  |  Odpovědět
Equica  |  01. 07. 2004 18:12  | 

.NET je standardizovan - tak vo co tady jde?

Souhlasím  |  Nesouhlasím  |  Odpovědět
deda.jabko  |  01. 07. 2004 19:25  | 

ano jiste, ale jenom cast napr. C#, IL,... ale treba ASP.NET uz ne a v tom je ta finta!

Souhlasím  |  Nesouhlasím  |  Odpovědět
BoodOk  |  02. 07. 2004 12:04  | 

A vystavovat se riziku znamena byt ve valce. Rumsfeld s Jirkou Krovakem by z Vas meli radost. At zije bulvar!

Souhlasím  |  Nesouhlasím  |  Odpovědět
kapor  |  01. 07. 2004 15:42  | 

je to chutne a funguje to len skoda winformsof chcelo by to priamo popdpru ale aj tak klobuk dole roboty je to teda mrte hehe

Souhlasím  |  Nesouhlasím  |  Odpovědět
deda.jabko  |  01. 07. 2004 19:33  | 

co se tyce winforms, tak na tom je mnohem lip Portable.NET na druhou stranu mu chybi poradny JIT, ale pro vyvoj Win aplikaci to jde bez problemu pouzit.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Martin  |  01. 07. 2004 16:27  | 

Nechci zacinat zadny flamewar, opravdu by me zajimalo, k cemu je to dobre.Co to ma navic vuci C++ (napr vuci prostredi MS Visual C++) popr. Delphi?

Souhlasím  |  Nesouhlasím  |  Odpovědět
KLL  |  01. 07. 2004 16:34  | 

Mozna ti to osvetli tahle diskuze.

Souhlasím  |  Nesouhlasím  |  Odpovědět
KLL  |  01. 07. 2004 16:34  | 

ehm, link: http://www.zive.cz/h/Programovani/F.asp?ARI=106869&HID=1&CAI=

Souhlasím  |  Nesouhlasím  |  Odpovědět
Martin  |  01. 07. 2004 16:55  | 

Aha...
..takze vlastne k nicemu

Souhlasím  |  Nesouhlasím  |  Odpovědět
xg  |  02. 07. 2004 01:05  | 

erm.. no a proc se vlastne ten C# a java pouzivaj ze? :o).. doporucuju neco prostudovat..

Souhlasím  |  Nesouhlasím  |  Odpovědět
amon  |  02. 07. 2004 18:02  | 

moja rec

Souhlasím  |  Nesouhlasím  |  Odpovědět
deda.jabko  |  01. 07. 2004 19:30  | 

treba garbage collector, "inteligentnejsi tridy", balik standardnich knihoven, programovani bez pointru a pristupu do pameti... --to bude zas flame

Souhlasím  |  Nesouhlasím  |  Odpovědět
Charlie  |  04. 07. 2004 18:58  | 

Pomocí .NET můžete v C++ na pár řádcích napsat třeba takovouhle databázovou aplikaci s relačním formulářem, čímž se vyrovnáte rychlosti při prototypování těm, kdo používají C# nebo Visual Basic. Přitom pořád můžete používat vkládanej assembler a všechny fíčury Céčka...

using  namespace  System;
using namespace System::Drawing;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Data::SqlClient;
void main() {
Form * F = new Form();
DataGrid * DG = new DataGrid();
DataSet * DS = new DataSet();
String * sCn = "Data Source=.;Initial Catalog=pubs;Integrated Security=SSPI";
SqlDataAdapter * daP = new SqlDataAdapter("SELECT * FROM publishers", sCn); daP->Fill(DS, "P");
SqlDataAdapter * daT = new SqlDataAdapter("SELECT * FROM titles", sCn); daT->Fill(DS, "T");
DS->Relations->Add(new DataRelation("Title Publishers", DS->Tables->Item[0]->Columns->Item[0], DS->Tables->Item[1]->Columns->Item[3]));
DG->Location = Point(20, 20); DG->Size = Size(500, 400);
DG->Anchor = static_cast<AnchorStyles>(15);
F->ClientSize = Size(550, 450);
DG->SetDataBinding(DS, "P");
F->StartPosition = FormStartPosition::CenterScreen;
F->Text = "Hiearchical SQL data source demo";
DG->CaptionText = "Title publishers";
F->Controls->Add(DG);
Application::Run(F);
}

Souhlasím  |  Nesouhlasím  |  Odpovědět
Prg  |  01. 07. 2004 17:26  | 

Než se poustět do debat o tom jak se C# vzali a  kdo ho ukradl a zaplatil a co ja vim co, tak ten jazyk tu prostě je , ale spíš by mě zajímalo jak je na tom v porovnání s ostatnímy jazyky z hlediska možností , jednoduchosti a tak dákle... třeba obzvláště jak je na tom v porovnání s Javou??

Souhlasím  |  Nesouhlasím  |  Odpovědět
Veverak  |  01. 07. 2004 19:25  | 

C# ceka zanik - jak se letos na jare Microsoft dohodli ze se dohodnout, tak z duvernych zdroju mam ze se v Redmondu pracuje aby .NET runtime umel spousten Java 2 bytecode nativne a ze vsechny potrebne knihovny pro Java2 1.4 a vyse budou v .NET dostupne. Takze je logicke, ze Microsoft of C# uz lehce ustupuje ...

Souhlasím  |  Nesouhlasím  |  Odpovědět
Bobris  |  01. 07. 2004 19:37  | 

No dik, pekne si me pobavil. Mimochodem Java jiz v .Netu "jede" viz. http://www.ikvm.net/

Souhlasím  |  Nesouhlasím  |  Odpovědět
deda.jabko  |  01. 07. 2004 19:41  | 

pokud to neni blud tak je to skveli tah jak pretahnout vyvojare a brutalni mnozstvi knihoven pro javu - a kdyz si vezmete co produkuje treba apache foundation, a pod jakou licenci! muze to jave zlomit vaz.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Salvador Limonez  |  01. 07. 2004 20:08  | 

Mno ja si naopak myslim, ze ASF Jave skvele pomaha. To ze jejich licence je vlastne BSD (delej si s tim uplne co chces) je perfektni ackoliv jsem jeste nemel potrebu toho vyuzit, ale zivot bez jejich knihoven uz si dnes nedovedou predstavit. Ani nemluve o tom, ze Tomcat je referencni implementace Servlet a JSP a co teprve az daji dohromady Geronima. Jo jo, jsou a budou zajimave casy v samotnem javovskem svete a ted jeste se do ringu souka .NET a jeho OS implementace. No kazdopadne bude jeste velmi veselo. Java s releasem 1.5 tedy od predevcerejska 5 v podstate smazne vyhody C# (autoboxing, atributy, enhanced loopy nad koleksnama a samozrejme ze NE delegaty, to by si Gosling radeji vydloubl oci) No a na zaver pobavim lahudkou v podobe quaka 2 v jave :) http://www.bytonic.de/html/jake2.html

Souhlasím  |  Nesouhlasím  |  Odpovědět
Melichar  |  01. 07. 2004 21:01  | 

Quake II je pro .NET naportovanej už dávno... http://www.vertigosoftware.com/Quake2.htm

Souhlasím  |  Nesouhlasím  |  Odpovědět
Salvador Limonez  |  01. 07. 2004 23:54  | 

No tak co uvadeji tak akorat prepsali cast kodu z C do C++ a prekompilovali v .NET Studiu 2003.

Souhlasím  |  Nesouhlasím  |  Odpovědět
bzzuuuuiiiiik  |  02. 07. 2004 13:02  | 

Presne tak, je to v C/C++ jako unmanaged code a jen tam jsou dodelane nejake features, jako treba radar, ktery ale mimochodem uz v jednodussi forme byl ke stazeni uz predtim jako mod do kvakena.

Souhlasím  |  Nesouhlasím  |  Odpovědět
deda.jabko  |  02. 07. 2004 18:50  | 

mno, to rikam, kdyby se povedlo provozovat knihovny od ASF na .NET byla by to docela citelna rana pro javu.

Souhlasím  |  Nesouhlasím  |  Odpovědět
llook  |  01. 07. 2004 19:51  | 

Podle toho bych řekl, že MS se snaží o to, aby u programů psaných v Javě bylo možné přejít na .NET a třeba další části systému psát v C#, ale ne naopak.

Jak chápu Váš příspěvek:
- .NET bude umět SPOUŠTĚT Java2 bytecode
- budou dostupné Java2 knihovny
- nebude možné kompilovat C# programy do takového bytecodu, které by si rozumělo s JVM.
- možná si vytvoří vlastní mutaci Javy (podobně jako se zachovali k JavaScriptu), která bude rozumět kódu z původní Javy, ale přidají si spoustu hovadin, které Java neumí.
- tedy bude snadný přechod z Javy na .NET, ale naopak to nepůjde
ale možná jsem jen paranoidní;)

Souhlasím  |  Nesouhlasím  |  Odpovědět
Veverak  |  02. 07. 2004 14:20  | 

Ano yo sedi, az na to vytvoreni mutace Javy - co bude v Jave, to bude spustitelne pomoci standardni Javy ...

Souhlasím  |  Nesouhlasím  |  Odpovědět
Melichar  |  01. 07. 2004 20:59  | 

.NET runtime spouštět byte code Javy nativně už dávno umí, viz J# Control, určenej právě proto, aby pod .NET mohly běhat web applety bez rekompilace...


Celé je to ale určené právě k opačnému účelu - co nejrychleji přetáhnout vývojáře Javy k C#....

Souhlasím  |  Nesouhlasím  |  Odpovědět
ssss  |  02. 07. 2004 09:04  | 

J# neni java - je to MS JVM. To znamena nekompatibilni s javou....

Souhlasím  |  Nesouhlasím  |  Odpovědět
deda.jabko  |  01. 07. 2004 19:38  | 

v C# programuju sice jenom obcas a zridka, ale abych pravdu rekl, je to jenom takova libivejsi java, mnohe urcite potesi autoboxing, properties, delegati a spousta jinych kouzelnosti, ktere java resi sice trosku obsahlejsim kodem, ale s mnohem jednodussim objektovym aparatem, knihovny jsou vicemene stejne akurat se misty jinak jmenujou a jsou umistene jinde. co do vykonu a zravosti prostredku jsou Java C# asi tak vyrovnane, pise se v tom zhruba stejne, ale java nuti podle me vic programatora myslet nad tim co pise.

btw. nevite jestli C# podporuje takove veci jakou jsou anonymni tridy?

Souhlasím  |  Nesouhlasím  |  Odpovědět
Melichar  |  01. 07. 2004 21:18  | 

Nevím, jaxe tomu říká v C#, ale ve VB.NET tu konstrukci běžně používam, obzvlášť ve spojení s With....

  Imports System.Windows.Forms
Module modMain
Sub Main()
With New Form
.Controls.Add(New Button())
.Text("I've no name..")
.ShowDialog()
End With
End Sub
End Module

Souhlasím  |  Nesouhlasím  |  Odpovědět
shrek  |  02. 07. 2004 00:14  | 

A kde je ta anonymni trida?

Souhlasím  |  Nesouhlasím  |  Odpovědět
Charlie  |  04. 07. 2004 19:02  | 

Třída Form i Button nemá název, vlastně celá ukázka nepoužívá žádnou proměnnou..

Souhlasím  |  Nesouhlasím  |  Odpovědět
deda.jabko  |  04. 07. 2004 22:26  | 

slysels nekdy o rozdilu mezi tridou a objektem? objekt, ktery neni prirazeny promenne jeste nemusi byt anonymni trida. chtelo by to projit si zaklady OOP.

Souhlasím  |  Nesouhlasím  |  Odpovědět
abc  |  02. 07. 2004 09:20  | 

C# anonymne triedy nema... dovodom anonymnych tried je vacsinou callback do obklopujucej triedy a C# ma na to delegatov...

V jave su anonymne triedy velmi vykonnou hracickou (aj ked prinasaju mensie problemy) ale v C# by boli zbytocne.
C# je hodne inspirovany Borlandackymi vyvojovymi prostrediami (ostatne .NET navrhovali byvali zamestnanci Borlandu :)
a .NET obsahuje vo svojom srdci podporu pre komponentovu architekturu.

V Jave ju museli "pridat" pomocou modelu JavaBeans... ale podarilo sa! ;) .NET je ovsem sympatickejsie, lebo tam nepises tolko geXXX() setXXX() a callback zatvoriek (tos, kazdemu sa moze pacit to alebo ono

Souhlasím  |  Nesouhlasím  |  Odpovědět
ssss  |  02. 07. 2004 15:53  | 

mno me osobne po par zkusenostech s .NETem prave getXX a setXX znacne chybely. Prestoze je nemusis clovek pouzivat ani v jave, tak si uvedom, ze obaleni vsech vlastnosti objektu je zakladni styl programovani v OOP - zabezpecujes si tu sve komponenty. Jinak o komponentach v jave je zbytecne mluvit, protoze javabeans je klasicky objekt. Vse jde delat i bez javabeanu.

Souhlasím  |  Nesouhlasím  |  Odpovědět
prg  |  02. 07. 2004 16:21  | 

Proboha jak ti mohlo chybet set a get


public int getAhoj(){
 return _ahoj
}


public void setAhoh(int a) {
 _ahoj = a;
}


kdyz v C# muzes pouzit cistejsi


public int Ahoj
{
 get {return _ahoj;}
 set{_ahoj = value;}
}


 


 


 


 

Souhlasím  |  Nesouhlasím  |  Odpovědět
ssss  |  02. 07. 2004 17:11  | 

mno me to teda moc citelnejsi nepripada.

Souhlasím  |  Nesouhlasím  |  Odpovědět
px  |  02. 07. 2004 17:17  | 

C# to so syntaxtickym cukrom prehana. Pozri:

http://www.geocities.com/csharpfaq/test2.html

Souhlasím  |  Nesouhlasím  |  Odpovědět
shrek  |  03. 07. 2004 10:24  | 

No jak se tak divam na ten clanek z odkazu, zase takova hruza to neni. Pretezovani operatoru vcetne [] a pretypovani bylo uz v C++ a je napr. i v Pythonu a dalsich jazycich (ikdyz mechanismus byva odlisny). Navic jsou tam snad jenom properties, ale to taky neni nic, s cim by prisli az designeri C# (a mam pocit, ze v pristi verzi Javy budou taky). Na druhou stranu si nemyslim, ze by C# proti Jave melo nejake ohromujici moznosti. Proste se tam nektere veci resi jinak, ale jazyky jsou hodne podobne.

Souhlasím  |  Nesouhlasím  |  Odpovědět
bzzuuuuiiiiik  |  02. 07. 2004 17:59  | 

To teda take netusim, co je na tom prehlednejsiho. getxxx  setxxx jsou proste normalni metody. Ten C# zapis mi prijde daleko mene prehledny. Minimalne je mi jasne, ze void vraci nic a int int. Mimochodem chci videt prehlednost toho zapisu pri tomhle a to nemluvim o prekryvani funkci v potomku. Proc do sebe matlat spoustu veci zbytecne. Mimochodem to mi pripomina ruzne jazyky a snahy o vynechavani zavorek apod. je to jen jiny zapis, otazkou je, zda prehlednejsi.


public void setAhoj(int ahoj) {


    switch (ahoj) {


        case 1:


             a_ = ahoj;


             break;


         default:


              throw new IllegalAArgumentException("Ahoj je proste jen jedna :o)");


    }


}


 


 

Souhlasím  |  Nesouhlasím  |  Odpovědět
deda.jabko  |  02. 07. 2004 19:02  | 

mno, zrovna pred tydnem, jsem potreboval, napsat funkci, ktera jako parametry akceptuje plochu a krivku v rovine a vraci krivku, ktera je na dane plose. v jave trivka, v C# me nastvalo, ze musim vytvaret celou novou tridu, ktera tady tyto veci akceptovala v konstruktoru - hromada zbytecneho kodu.

navic gettry a settry jsou bezne "zaslani zpravy", kdezto get a set jsou sileny syntakticky cukr, ktery dela to same, stejnek indexry a jenom zbytecne komplikuji jazyk a jeho citelnost.

Souhlasím  |  Nesouhlasím  |  Odpovědět
DAS  |  03. 07. 2004 08:29  | 

C# verze 1 anonymní třídy nepodporuje, ale specifikace C# 2 (na které se pracuje, vyjde spolu s .NET FW v2) anonymní třídy podporuje, stejně jako generika a další featury.

Souhlasím  |  Nesouhlasím  |  Odpovědět
deda.jabko  |  03. 07. 2004 10:48  | 

C# 2.0 podporuje jenom anonymni delegaty - najednu stranu rikam brrr! nadruhou stranu lambda vyrazy jsou tezce cooool, a srdce nejdenoho LISPare a Schamare nad tim zaplesa.

stejne si myslim, ze anonymni delegaty tam dali jenom proto, aby pretahli vsechny programatory co pisou v LISPu

Souhlasím  |  Nesouhlasím  |  Odpovědět
shrek  |  03. 07. 2004 19:21  | 

Jasně, všichni pravověrní Common Lispaři přejdou k C#. To by museli v Redmondu provozovat voodoo.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Zasílat názory e-mailem: Zasílat názory Můj názor
Aktuální číslo časopisu Computer

Megatest: 20 powerbank s USB-C

Test: mobily do 3 500 Kč

Radíme s výběrem routeru

Tipy na nejlepší vánoční dárky