**Visual J++** (արտասանվում է "Jay Plus Plus") Microsoft-ի կողմից Java-ի դադարեցված իրագործումն է։ Շարահյուսությունը, հիմնաբառերը, և քերականական սովորույթները նույնն են ինչ Java-ինը։ Microsoft-ը դադարեցրել է J++-ի աջակցությունը 2004 թ.-ի հունվարին, որոշակի չափով փոխարինելով այն J#-ի և C#-ի հետ։

J++-ը համեմատած Sun-ի Java իրագործման հետ
-----------------------------------------

Մինչ J++ հարմարեցված էր Java-ի լեզվական դասակարգմանը, Microsoft-ը չի իրագործել որոշակի Sun-ի Java իրագործման առանձնահատկություններ իր Visual J++ արտադրանքի գծում։ Remote Method Invocation (Java RMI) և Java Native Interface (JNI) այդպիսի առանձնահատկությունների օրինակներ են։

J++-ը իրագործել է այլ ընդլայնումներ, որոնք Sun-ի Java իրագործման մասը չեն կազմում։ Callback-ների և delegate-ների ներառումը event handling-ի համար հետագայում աջակցում է J++-ի սահմանմանը որպես լիովին ուրիշ լեզու՝ պարզապես հիմնված արդեն գոյություն ունեցող ոճային հասկացողության վրա։

J++-ի կիրառությունները չեն հարմարեցված հիմքում ընկած օպերացիոն համակարգի գործառույթների, որպես որևէ այլ Java կիրառություն, Sun-ի Java SDK-ի տակ մուտք գործելու ստանդարտացված մեթոդին։ Microsoft-ի իրագործման մեջ, հիմքում ընկած ֆրեյմվորկ-ը J/Direct անվանումով ապահովում է հիմքային մեխանիզմ, որը թույլ է տալիս J++ կիրառություններին խորամանկել Java-ի դասերի գրադարանի և API մեդիային՝ հիմքում ընկած օպերացիոն համակարգ մուտք գործելու համար։ Շնորհիվ օրիգինալ Java ֆրեյմվորկի շուրջ այս դյուրանցման, J++ կիրառությունները եղել են ավելի արդյունավետ Win32 API կիրառությունների առավելությունները վերցնելու հարցում, քան Java կիրառությունները։

J++ կիրառությունները օգտագործելով այս ունակությունները չեն կարող աշխատել Sun-ի Java SDK-ի վրա, բայց Kaffe պրոյեկտը զարգացրել է ընդլայնումներ, որոնք դարձրել են հնարավոր J++ կիրառությունները նման ունակություններով աշխատեցնել իրենց բաց կոդով JVM-ի վրա։ Ինչևէ այս ընդլայնումները (իրականացված TransVirtual-ի կողմից Microsoft-ի ֆինանսավորմամբ) լայնորեն չեն կիրառվել, և J++ կիրառությունները մինչ այժմ կարիք ունեն Visual J++-ի վրա կոմպիլյացիա լինելու մինչ Kaffe-ի կողմից աշխատեցվելը։

Visual J++ աջակցում է ActiveX-ին։

The WFC
-------

Windows հիմնադրամի դասերը (WFC) կցել են Microsoft Win32 API հարթակը և DHTML օբյեկտային մոդելները մեկ միավորված դասային գրադարանում։ WFC-ը հիմնականում մոդելավորվել է Windows-ի վրա Java կիրառություններին համապատասխան օգտատիրոջ գրաֆիկական ինտերֆեյս ստեղծելու համար։

Sun-ի հայցը Microsoft-ի դեմ
---------------------------

Sun Microsystems-ը սկզբնապես արտոնագրել է Java-ն Microsoft-ին, բայց ավելի ուշ սկսել է դատ Microsoft-ի դեմ ապրանքանիշի նկատմամբ խախտում կատարելու համար։ Sun-ի ապրանքանիշի արտոնագիրը Java-ի բրենդը օգտագործելու համար պնդում է, որ բոլոր իրագործումները "համատեղելի" են։

Որոշ հետազոտողներ նկատել են, որ անհամատեղելիությունը Microsoft-ից կանխամտածված էր։ Դա փորձ էր, որն ամենաքիչը կնվազեցներ Sun-ի Java տեխնոլոգիայի առավելությունը։

MSJVM-ի անհաջողությունը Sun-ի համապատասխանության թեստերը անցկացնելու հարցում լուրջ գործոն էր նախնական դատավարության ժամանակ։ 2001 թ.-ի հունվարի 24-ին սա և մնացած այլ չլուծված Sun-Microsoft դատավարությունները վճռված են որպես Sun-ի և Microsoft-ի միջև երկարատև համաձայնության մաս։ Կարգավորման փաստաթուղթը նշել է, որ Microsoft-ը նաև չէր կարող առաջխաղացում ունենալ J++-ի մեջ իր արտացոլված Java version 1.1.4 իրագործումից այն կողմ։ Սա արդյունավետորեն վերջ դրեց J++-ին և դրա հետագա թարմացումներին։ Ինչպես նաև, MSJVM-ը ստիպված դադարեցնում է տարածումը և այլևս հասանելի չի լինում ներբեռնման համար։

Շնորհիվ ընթացող դատավարության կարգավորումների, Microsoft-ը թույլատրվում է հետագայում թարմացնել MSJVM-ը, որպեսզի ուղղի անվտանգության անցքերը և անվտանգության վտանգների հետ առնչվող այլ խնդիրներ։ Microsoft-ը արդեն դադարեցրել է աջակցությունը MSJVM- համար 2007 թ.-ի դեկտեմբերի 31-ին։

J++ տեխնոլոգիան վերջնականապես վերամշակվել է և գոյատևել մի որոշ ժամանակ՝ որպես Microsoft .NET հարթակ և J# ծրագրավորման լեզու։

Visual J++ - The IDE
--------------------

Visual J++- նաև J++-ի համար Integrated Development Environment (IDE)-ի անվանումն է և ապահովում է տարբեր գործիքներ և սպասարկող ծրագրերs J++ ծրագրավորողներին օգնելու առավելագույն օգուտով օգտագործել Win32 API.

Visual J++-ը այլևս հասանելի չէ տարածման համար, բայց այն Microsoft Visual Studio արտադրական գծի մասն է։ Visual Studio 6.0 J++ ներառող վերջին թողարկումն է։

Visual J#
---------

Visual J# *(արտասանվում է "Jay Sharp")* -ը Microsoft-ի լեզու է, որի շարահյուսությունը մոտ է Java-ին, .NET Framework մաս է։ Visual J#-ը Microsoft Visual Studio.NET արտադրական հավաքակազմի մաս է և մոդելավորված է բարելավողներին և ծրագրավորողներին օգնելու J++-ից (or Java) անցնել .NET Framework-ին։

Ավելի ուշ Microsoft-ը զարգացրել է C# ("C Sharp") լեզուն որպես .NET platform-ի հիմնական լեզու, որը տարբեր կողմերով ազդեցություն է կրել Java-ից, հետևաբար .NET Ֆրեյմվորկը Java-ի հետ կիսում է շատ գաղափարներ։ Ավելի նման Java-ին, C#-ը կոմպիլյացված է բիթկոդի (կոչվում է CIL) տիպին և աշխատում է վիրտուալ մեքենայի գագաթին, որը .NET-ում կոչվում է Common Language Runtime : Visual Studio 2005-ը J# ներառող վերջին թողարկումն էր։

Ծանոթագրություններ
------------------

1. ↑  . `{{cite web}}`: Missing or empty `|title=` (օգնություն)
2. ↑  «JFC; Microsoft declares war». xent.com. 1997 թ․ օգոստոսի 1. Վերցված է 2007 թ․ հուլիսի 14-ին.
3. ↑  «Microsoft's J/Direct called death of Java». JavaWorld. 1997 թ․ հուլիսի 1. Արխիվացված է օրիգինալից 2012 թ․ մարտի 2-ին. Վերցված է 2010 թ․ նոյեմբերի 20-ին.
4. ↑  «Transvirtual Adopts Microsoft Java Extensions». linuxjournal.com. 1999 թ․ հունվարի 10. Վերցված է 2007 թ․ օգոստոսի 1-ին.
5. ↑  «Java-Clone Announced». slashdot.org. 1999 թ․ հունիսի 14. Վերցված է 2007 թ․ օգոստոսի 1-ին.
6. ↑  «MS debuts Visual J++». *CNet*. 1996 թ․ հոկտեմբերի 1. Վերցված է 2011 թ․ հոկտեմբերի 31-ին.
7. ↑  Lohr, Steve (1998 թ․ մայիսի 25). «Still Another Adversary for Microsoft». New York Times. Վերցված է 2009 թ․ մարտի 15-ին. «*A September 1997 E-mail message, sent by a Microsoft official identified as P. Sridharan, is quoted as saying: "Եկեք շարժվենք առաջ և գողանանք Java լեզուն։ Մենք երբևէ դիտարկե՞լ ենք, թե որքան ժամանակ էր պետք, որ Microsoft-ը ստեղծեր Java-ի աշխատող խաչաձև պլատֆորմ։ Իհարկե, մենք դա երբեք չէինք անի, բայց դա կտար մեզ գաղափար այն մասին, թե որքան ժամանակ է անհրաժեշտ Sun-ի Java-ն ոչնչացնելու աշխատանքների համար:"*»
8. ↑  «Microsoft A History of Anticompetitive Behavior and Consumer Harm» (PDF). European Committee for Interoperable Systems. 2009 թ․ մարտի 31. Վերցված է 2009 թ․ ապրիլի 22-ին. «*Մենք պետք է պարզապես դանդաղորեն աճեցնենք j++-ի տարածումը և ենթադրենք, որ մարդիկ կքաղեն ավելի շատ դասերի հետ կապված առավելություններ առանց երբևէ գիտակցելու, որ կառուցում են win32-միայն java ծրագրեր:*»
9. ↑  «Sun settles with Microsoft, announces layoffs». www.news.com. 2004 թ․ ապրիլի 2. Արխիվացված է օրիգինալից 2008 թ․ դեկտեմբերի 2-ին. Վերցված է 2007 թ․ հոկտեմբերի 3-ին.
10. ↑  «Microsoft Java Virtual Machine Support». Microsoft. 2007 թ․ մարտի 2. Վերցված է 2007 թ․ հոկտեմբերի 9-ին.

Արտաքին հղումներ
----------------

* Product Features in Visual J++ - By Edition\* Microsoft Visual J#Արխիվացված 2006-02-07 Wayback Machine
* Microsoft Java Web Site
* Sun's Agreement with Microsoft

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 

| * դ
* ք
* խ
Հիմնական ծրագրավորման լեզուները (համեմատումը  • IDE  • պատմությունը  • ժամանակագրութունը) |
| --- |
|  |
| Օգտագործվողլեզուները | 
Ada •
APL •
Ասեմբլեր •
ActionScript •
ABAP/4 •
AutoIt •
AWK •
Basic •
C •
Կոբոլ •
C++ •
C# •
Cω •
Clarion •
Clojure •
ColdFusion •
Common Lisp •
D •
dBase •
Delphi •
Eiffel •
Erlang •
Euphoria •
F# •
Fort •
Fortran •
Gambas •
Go •
Groovy •
HAL/S •
Haskell •
Icon •
Ջավա •
ՋավաՍկրիպտ •
Limbo •
Lua •
Mudula-3 •
Object Pascal •
Objective-C •
OCaml •
Oz •
Parser •
Pascal •
Perl •
PHP •
PowerBASIC •
Python •
PL/1 •
Prolog •
R •
Ruby •
Scala •
Scheme •
Smalltalk •
SQL •
Standard ML •
PL/SQL •
Tcl •
Vala •
Visual Basic
(.NET)
 |
|  |
| Ուսումնական | 
Agda •
Clean •
Curry •
Լոգո •
ML •
REFAL •
Simula •
Օբերոն
 |
|  |
| IEC 61131-3 | 
Instruction List •
ST •
FBD •
Ladder Diagram (LD) •
SFC
 |
|  |
| Այլ | 
Modula-2 •
Miranda •
Hope •
Rexx
 |
|  |
| Էզոտերիկ | 
HQ9+/HQ9++ •
INTERCAL •
Brainfuck •
Brainfork •
Befunge •
Malbolge •
Piet •
Spoon •
Unlambda •
Whitespace •
FALSE •
LOLCODE
 |
|  |
| Վիզուալ | 
G
(LabVIEW) •
Microsoft VPL •
Sikuli •
VisSim •
Scratch
 |

 |