Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

c — Π―Π·Ρ‹ΠΊ «Π‘» слоТнСй Ρ‡Π΅ΠΌ Java ?

Π”ΠΎΠ±Ρ€ΠΎΠΉ Π½ΠΎΡ‡ΠΈ ! КоллСги Ρ‚Π°ΠΊ Π²Ρ‹ΡˆΠ»ΠΎ Ρ‡Ρ‚ΠΎ сам я ΠΏΠΈΡˆΡƒ Π½Π° Java Π½ΠΎ Π½Π°ΠΌ ΠΊΠΈΠ΄Π°ΡŽΡ‚ ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, ΠΈ Π² понСдСльник Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΈΠΉΡ‚ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ (связан с сСтСвой Π·Π°Ρ‰ΠΈΡ‚ΠΎΠΉ) для долгосрочной ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΈ Π±Π°Π³-фикса ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ написан Π½Π° Ρ‡ΠΈΡΡ‚Π΅ΠΉΡˆΠ΅ΠΌ «Π‘ΠΈ» (Ρ‚Π°ΠΊ Π½Π°ΠΌ сказали) Ρ‚ΠΈΠΏΠ° вспоминайтС «Π‘ΠΈ-ΡˆΠΊΡƒ», Π° я Ρ…ΠΎΡ‚ΡŒ ΠΈ ΠΎΠΊΠΎΠ½Ρ‡ΠΈΠ» Π’Π£Π— Π½ΠΎ ΠΈΠ·ΡƒΡ‡Π°Π» с самого Π½Π°Ρ‡Π°Π»Π° php ΠΏΠΎΡ‚ΠΎΠΌ Java (Π΄Π°ΠΆΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ C# послС Java), Π° Π²ΠΎΡ‚ с чистым «Π‘ΠΈ» ΠΊΠ°ΠΊ-Ρ‚ΠΎ Π½Π΅ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ встрСчатся ΠΈ Π²ΠΎΡ‚ дкмаю занятся ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ этого «Π‘ΠΈ» ΠΈΠ»ΠΈ ΠΈΠ΄Ρ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈΡΠΊΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° Java Ρƒ нас Π½Π΅Ρ‚ !
На ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд Π²Ρ€ΠΎΠ΄Π΅ простой язык Π±Π΅Π· ООП, Π° Ρ‚Π°ΠΌ ΠΊΡ‚ΠΎ Π΅Π³ΠΎ Π·Π½Π°Π΅Ρ‚ !!!
ВсСм большая Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΊΡ‚ΠΎ осмСлится ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Ρ…ΠΎΡ‚ΡŒ строчкой …

2

Π•Ρ‰Ρ‘ ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, массивы ΠΈ строки. Они ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π² C синтаксичСски, Ρ‡Ρ‚ΠΎ часто ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ нСдопониманию.

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ β€” Ρ€ΡƒΡ‡Π½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π² C (Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ссылки Π² Java) ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° Π½Π΅Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ, Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ ΠΈΠ»ΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Ρ‘Π½Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ.

Π•Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎ ΡΠ΅Ρ€ΡŒΡ‘Π·Π½ΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅: Ρƒ рСсурсов Π² отсутствиС GC появляСтся Π²Π»Π°Π΄Π΅Π»Π΅Ρ† β€” ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ (ΠΊΠΎΠ΄), отвСтствСнная Π·Π° своСврСмСнноС освобоТдСниС рСсурса.

7

@Oleg_Samitch Π’Π°ΡˆΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ достойны сочувствия. Π‘ΠΈ — простой, Π½ΠΎ элСгантный язык Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня. Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎ послС java — Ρ€ΡƒΡ‡Π½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ (Π²Ρ‹Π΄Π΅Π»ΠΈΠ» динамичСски — Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈ Π½Π΅ ΠΏΡ€Π΅Π½Π΅Π±Ρ€Π΅Π³Π°ΠΉ использованиСм инструмСнтов для отслСТивания этого процСсса) ΠΈ (Ρ‡Ρ‚ΠΎ Π²Π°ΠΆΠ½ΠΎ для чтСния Ρ‡ΡƒΠΆΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°) массированного использования ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹Ρ… эффСктов. Ну ΠΏΡ€ΠΎ отсутствиС ООП-ΠΌΠΈΡ„ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π’Ρ‹ ΠΈ сами Π·Π½Π°Π΅Ρ‚Π΅.

10

ВнСсу ΠΈ свои 5 ΠΊΠΎΠΏΠ΅Π΅ΠΊ.

НС ΡƒΡΡ‚Π°ΡŽ всСм ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π‘ΠΈ (ΠΈΠΌΠ΅Π½Π½ΠΎ язык, Π° Π½Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ систСма) прост, ΠΊΠ°ΠΊ ΠΏΠ°Π»ΠΊΠ° ΠΈ Π²Π΅Ρ€Π΅Π²ΠΊΠ°, Ρ‡Π΅ΠΌ ΠΈ Ρ…ΠΎΡ€ΠΎΡˆ.

Π§Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΡΠ΅Ρ‚ΡŒΡŽ (сказано ΠΏΡ€ΠΎ ΡΠ΅Ρ‚Π΅Π²ΡƒΡŽ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ), нСизвСстно. ΠœΠΎΠΆΠ΅Ρ‚ чистыС RAW-сокСты, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ, Π½ΠΎ ΠΊΡƒΡ‡Ρƒ RFC Π²Π°ΠΌ ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ придСтся ΠΏΡ€ΠΎΡˆΡ‚ΡƒΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚-Ρ‚ΠΎ, Ρ…ΠΎΡ‚ΡŒ Π² *nix-Π°Ρ…?

1

C ΠΈ C++ ΠΎΡ‡Π΅Π½ΡŒ сильно ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ C# ΠΈ Java. Насколько знаю, c# разрабатывался Microsoft ΠΊΠ°ΠΊ ΠΎΡ‚Π²Π΅Ρ‚ Java, ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π² с/с++ приходится Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, Π² Java ΠΈ C# ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ сами. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΠΈΠ΅, Ссли Π²Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚Π΅ΡΡŒ, ΠΈ «ΠΏΡ€ΠΎΡΡ‚ΠΎΠΉ багфикс» слСту вряд Π»ΠΈ получится ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ.

Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ програмисту слоТно ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹ΠΌΠΈ языками, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с java Π² erlang ΠΈΠ»ΠΈ haskell. Π‘ΠΎΠ»ΡŒΡˆΠΎΠΉ ΠΏΠΎΡ€ΠΎΠ³ вхоТдСния. А ΠΌΠ΅ΠΆΠ΄Ρƒ родствСнными языками — просто.

Π‘ чистым си Π±ΡƒΠ΄ΡƒΡ‚ Ρ‚Ρ€ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹:

  • строки Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ.
  • Π½Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΈΡ… «ΡƒΠ΄ΠΎΠ±Π½ΡΡˆΠ΅ΠΊ» (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ List, Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΠ»ΠΈ Π±Ρ€Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ Ρ‚ΠΎ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ΅).
  • ΡƒΠ±ΠΈΡ€Π°Ρ‚ΡŒ Π·Π° собой (GC Π½Π΅Ρ‚).

Но Π·Π°Ρ‚ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠ»ΡŽΡΡ‹:

  • компилируСтся быстро (Ссли Ρ‚ΠΎΠ»ΡŒΠΊΠΎ это майкрософт)
  • количСство абстракций сильно мСньшС
  • Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ°Π½ΠΈΠ΅.

2

Чистый C скорСС всСго послС Java/C# Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ слоТСн. Π’ Ρ‚ΠΎΠΌ ΠΏΠ»Π°Π½Π΅, Ρ‡Ρ‚ΠΎ Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π”Π°ΠΆΠ΅ Ρ‚Π°ΠΊΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ классы ΠΊΠ°ΠΊ String Π±ΡƒΠ΄Π΅Ρ‚ тяТСло ΡΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

Когда приходится ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° Π½Π΅ΠΌ, Ρ‚ΠΎ я часто ΠΌΠ°Ρ‚Π΅Ρ€ΡŽΡΡŒ ΠΈΠ±ΠΎ ΠΏΠΎΡ€ΠΎΠΉ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ понятно Π² Ρ‡Ρ‘ΠΌ ошибка. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€Ρ‹ Π²Ρ‹Π΄Π°ΡŽΡ‚ Ρ‡Π°Ρ‰Π΅ Ρ‡Π΅ΠΌ Π² Java/C# ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΠΎΠ±Ρ‰ΠΈΠ΅ ошибки ΠΈ Ρ…Ρ€Π΅Π½ поймСшь Π³Π΄Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚.

Но я Π±Ρ‹ сказал, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ стоит.

Π‘ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ тяТСло с указатСлями ΠΈ стрингами (Ρ‚ΠΎΡ‡Π½Π΅Π΅ с отсутствиСм стрингов). Но ΠΊΠ°ΠΊ Π½Π΅ ΠΊΡ€ΡƒΡ‚ΠΈ Π² Π‘ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ эффСктивныС ΠΏΠΎ скорости ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‡Π΅ΠΌ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… языках.

12

Π’Π°Ρˆ ΠΎΡ‚Π²Π΅Ρ‚

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΈΠ»ΠΈ Π²ΠΎΠΉΠ΄ΠΈΡ‚Π΅

РСгистрация Ρ‡Π΅Ρ€Π΅Π· Google

РСгистрация Ρ‡Π΅Ρ€Π΅Π· Facebook

РСгистрация Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΡ‡Ρ‚Ρƒ

ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π±Π΅Π· рСгистрации

ΠŸΠΎΡ‡Ρ‚Π°

НСобходима, Π½ΠΎ Π½ΠΈΠΊΠΎΠΌΡƒ Π½Π΅ показываСтся

ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π±Π΅Π· рСгистрации

ΠŸΠΎΡ‡Ρ‚Π°

НСобходима, Π½ΠΎ Π½ΠΈΠΊΠΎΠΌΡƒ Π½Π΅ показываСтся

НаТимая Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚Β», Π²Ρ‹ ΡΠΎΠ³Π»Π°ΡˆΠ°Π΅Ρ‚Π΅ΡΡŒ с нашими ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ соглашСниСм, ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΉ ΠΎ ΠΊΡƒΠΊΠΈ

C++ ΠΈΠ»ΠΈ Java — ΠΊΠ°ΠΊΠΎΠΉ язык программирования Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ?

Ни для ΠΊΠΎΠ³ΠΎ Π½Π΅ сСкрСт, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ — это слоТная ΠΎΡ‚Ρ€Π°ΡΠ»ΡŒ. ВсС большС людСй ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ Π΄Π½Π΅ΠΌ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… Π½Π°ΡƒΠΊ. Однако ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ язык программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ. БСгодня ΠΌΡ‹ сравним C++ ΠΈΠ»ΠΈ Java большС ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для вас ΠΈ с ΠΊΠ°ΠΊΠΈΠΌΠΈ цСлями Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ ΠΈΡ…. Π‘Ρ‚Π°Ρ‚ΡŒΠΈ-сравнСния ΠΌΠΎΠ³ΡƒΡ‚ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ языки кодирования, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π½ΠΈΡ… соотвСтствуСт вашим потрСбностям.

Для Π½Π°Ρ‡Π°Π»Π° я расскаТу Π²Π°ΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ… (C++ ΠΈΠ»ΠΈ Java) Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ рассмотрим основы, ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΠΎΠ±ΡΡƒΠΆΠ΄Π΅Π½ΠΈΡŽ основного различия ΠΌΠ΅ΠΆΠ΄Ρƒ C++ ΠΈΠ»ΠΈ Java. НаконСц, Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΌΡ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ сравнСния ΠΈ попытаСмся Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π΄Π²ΡƒΡ… языков стоит вашСго Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

  • 1. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅
  • 1.1. Java
  • 1.2. C++
  • 2. C++ ΠΈΠ»ΠΈ Java. Π‘Ρ…ΠΎΠΆΠ΅ΡΡ‚ΡŒ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅
  • 3. ΠšΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ для сравнСния
  • 3.1. ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ
  • 3.2. ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ
  • 3.3. Π—Π°Ρ€ΠΏΠ»Π°Ρ‚Π° спСциалистов
  • 4. Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅
  • 4.1. Π£ ΠΊΠ°ΠΊΠΎΠ³ΠΎ языка Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ?
  • 4.2. Какой ΠΈΠ· языков популярнСС?
  • 4.3. БпСциалисты ΠΊΠ°ΠΊΠΎΠ³ΠΎ языка Π·Π°Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ большС?
  • 5. Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΠΎΠ±ΡΡƒΠΆΠ΄Π΅Π½ΠΈΡŽ сравнСния C++ ΠΈΠ»ΠΈ Java, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ, Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π΄Π²ΡƒΡ… рассматриваСмых языках. НС Π²ΠΎΠ»Π½ΡƒΠΉΡ‚Π΅ΡΡŒ, я Π½Π΅ Π±ΡƒΠ΄Ρƒ Π²Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π² подробности — ΠΌΡ‹ рассмотрим Ρ‚ΠΎΠ»ΡŒΠΊΠΎ самыС Π²Π°ΠΆΠ½Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ умСстны, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ язык Π»ΡƒΡ‡ΡˆΠ΅ всСго соотвСтствуСт вашим потрСбностям.

Java

Java Π±Ρ‹Π» создан ДТСймсом Гослингом ΠΈ двумя Π΅Π³ΠΎ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ Π΅Ρ‰Π΅ Π² 1991 Π³ΠΎΠ΄Ρƒ. ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΎΠ½ основывался Π½Π° синтаксисС языка программирования C, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚ΠΎΠ³Π΄Π° это Π±Ρ‹Π»ΠΎ Π½ΠΎΡ€ΠΌΠΎΠΉ. Java — это язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для повсСднСвных Π·Π°Π΄Π°Ρ‡.

Одной ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Ρ… особСнностСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ выдСляСт язык Java ΠΏΡ€ΠΈ сравнСнии C++ ΠΈΠ»ΠΈ Java, являСтся Π΅Π³ΠΎ слоган — «напиши ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, запускай Π²Π΅Π·Π΄Π΅Β» (ΠΈΠ»ΠΈ WORA — β€œwrite once, run everywhere”, для краткости). Π­Ρ‚ΠΎΡ‚ слоган ΠΏΡ€ΠΈΠ·Π²Π°Π½ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠΈΠ²Π°Ρ‚ΡŒ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Java — Π΅Π³ΠΎ создатСли ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ язык программирования Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Π·Π°Π΄Π°Ρ‡ программирования.

Уникальная Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΈ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Java сдСлали Π΅Π³ΠΎ языком программирования для ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ. Π­Ρ‚ΠΎ особСнно Π²Π΅Ρ€Π½ΠΎ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ΄ Android. Если ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ C++ ΠΈΠ»ΠΈ Java, язык Java выдСляСтся своСй Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ Ρ€Π΅ΠΏΡƒΡ‚Π°Ρ†ΠΈΠ΅ΠΉ срСди Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠΉ, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° язык Java, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ Π² Ρ‚Ρ€ΠΈ большиС Π³Ρ€ΡƒΠΏΠΏΡ‹: ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ, возраст ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ. Π’Π΅ΠΌΠ° скорости ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΡΡ‚ΡŒΡŽ — ΠΎΠ± этом упоминаСтся Π½Π΅ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΡΡ‚Π°Ρ‚ΡŒΡΡ…, Π³Π΄Π΅ ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ C++ ΠΈΠ»ΠΈ Java, Π½ΠΎ язык Java ΠΈΠΌΠ΅Π» большиС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΠΊΠΎΠ³Π΄Π° Ρ€Π΅Ρ‡ΡŒ шла ΠΎ скорости. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΡΡ‚ΡŒΡŽ для вас, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π² настоящСС врСмя ΠΎΠ½ считаСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· самых быстрых языков программирования! Π’Π°ΠΊΠΎΠΉ вопрос Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ умСстСн ΠΏΡ€ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ… мощностях процСссоров!

ΠžΠΏΡ‹Ρ‚Π½Ρ‹Π΅ говорят, Ρ‡Ρ‚ΠΎ Java состарился ΠΈ устарСл ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ, Π±ΠΎΠ»Π΅Π΅ прогрСссивными языками программирования (сравнСниС C++ ΠΈΠ»ΠΈ Java являСтся ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ). Но всё измСнилось Π² ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ Java 9 — сильно ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠΉ вСрсиСй языка, которая ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для скСптиков ΠΈ ΠΏΡ€ΠΈΠ·Π²Π°Π½Π° Π΄ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ зрСния. Если ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΏΡ€ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ, Ρ‚ΠΎ ΠΈ с этим Ρƒ Java Π±Ρ‹Π»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ — это Π±Ρ‹Π»ΠΎ Π½Π° Ρ€Π°Π½Π½ΠΈΡ… этапах послС появлСния Π½Π° свСт языка, Π½ΠΎ с Ρ‚Π΅Ρ… ΠΏΠΎΡ€ ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ исправлСны.

C++

C ++ Π±Ρ‹Π» создан Π² 1979 Π³ΠΎΠ΄Ρƒ Π‘ΡŒΡΡ€Π½ΠΎΠΌ Бтрауструпом. Как ΠΈ Java, C ++ — это язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для повсСднСвного использования.

Если Π²Ρ‹ Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΡΠ»Ρ‹ΡˆΠΈΡ‚Π΅ ΠΎ C ++ ΠΈΠ· этой ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΏΡ€ΠΎ сравнСниС C++ ΠΈΠ»ΠΈ Java, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ·Π°Π΄Π°Ρ‡Π΅Π½Ρ‹ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° язык программирования C. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ язык C ++ являСтся Ρ€Π°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒΡŽ C. Π“Π»Π°Π²Π½ΠΎΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ этими двумя языками программирования Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ C Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для программирования Π½Π° систСмном ΡƒΡ€ΠΎΠ²Π½Π΅, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ язк C ++ Π±Ρ‹Π» создан для использования Π²ΠΎ всСм, начиная ΠΎΡ‚ создания ΠΈΠ³Ρ€. Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сСрвСрного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния.

Одна ΠΈΠ· Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹Ρ… особСнностСй C ++ (ΠΈ это Π±ΡƒΠ΄Π΅Ρ‚ вСсьма Π²Π°ΠΆΠ½ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ C++ ΠΈΠ»ΠΈ Java) — это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ практичСски нСсравнСнныС ΡƒΡ€ΠΎΠ²Π½ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ отраслСвых экспСртов ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ Π΅Π³ΠΎ с C. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, язык C ++ являСтся Π»Π΅Π³ΠΊΠΈΠΌ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠΉ памяти, ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€ΡƒΡ‡Π½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° любой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅.

НСкоторыС ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с C ++ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎΠ± ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈ бСзопасности. НаличиС Ρ€ΡƒΡ‡Π½ΠΎΠ³ΠΎ управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ этих процСссов Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ самими программистами. Π—Π½Π°Π½ΠΈΠ΅ этого языка Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Π½Π°Π²Ρ‹ΠΊΠΎΠ² ΠΎΡ‚ программиста ΠΈ особСнно внимания.

Π‘Π°ΠΌΡ‹Π΅ ПолюбившиСся Π‘Ρ‚Π°Ρ‚ΡŒΠΈ

Π˜Ρ‰Π΅Ρ‚Π΅ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ связанной Ρ‚Π΅ΠΌΠ΅? ΠœΡ‹ собрали ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Π»ΠΈ врСмя с пользой. ВзглянитС!

C++ ΠΈΠ»ΠΈ Java. Π‘Ρ…ΠΎΠΆΠ΅ΡΡ‚ΡŒ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅

БСйчас Π²Ρ‹ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ознакомились с двумя языками программирования, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ нСпосрСдствСнному ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ C++ ΠΈΠ»ΠΈ Java. И Π½Π°Ρ‡Π½Π΅ΠΌ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ различиях ΠΈ сходствах ΠΌΠ΅ΠΆΠ΄Ρƒ этими двумя языками.

Если Π±Ρ‹ Π²Ρ‹ спросили ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… программистов, Ρ‡Ρ‚ΠΎ, ΠΏΠΎ ΠΈΡ… мнСнию, являСтся основным ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ΠΌ C ++ ΠΎΡ‚ Java, ΠΎΠ½ΠΈ, вСроятно, ΠΎΡ‚Π²Π΅Ρ‚ΠΈΠ»ΠΈ Π±Ρ‹ Π²Π°ΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»ΠΎ Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅. Π―Π·Ρ‹ΠΊ C ++ зависит ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Π° язык Java — Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚ нСзависим ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π­Ρ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для людСй ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ C++ ΠΈΠ»ΠΈ Java.

Бходство Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ язык Java являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ, Π° язык C++ — ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΌ, ΠΈ это являСтся основной Ρ€Π°Π·Π½ΠΈΡ†Π΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ. Π’ послСднСС врСмя ООП (ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅) стало Π½ΠΎΡ€ΠΌΠΎΠΉ — Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ соврСмСнных языков программирования сСгодня ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ»ΠΈ частично ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹. Π­Ρ‚ΠΎ позволяСт языкам ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Ρ…, Π° Π½Π΅ Π½Π° процСссах, ΠΏΠΎΠ²Ρ‹ΡˆΠ°Ρ ΠΈΡ… ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΈ ΠΎΠ±Ρ‰ΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Π―Π·Ρ‹ΠΊ C ++ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ ΠΈ это являСтся ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ этого языка программирования. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ фокусируСтся Π½Π° процСссах ΠΈ функциях, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π½Π°Π±ΠΎΡ€ΠΎΠΌ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡ… Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΡŽΡ‚.

Π˜Ρ‚Π°ΠΊ, Π²ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΈ сходство ΠΌΠ΅ΠΆΠ΄Ρƒ C++ ΠΈΠ»ΠΈ Java. Учитывая всС Π²Ρ‹ΡˆΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅, Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°ΠΉΠ΄Π΅ΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ для нашСго сравнСния, ΠΈ Ρ‚ΠΎΠ³Π΄Π° ΠΌΡ‹ смоТСм ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ самому Π°Π½Π°Π»ΠΈΠ·Ρƒ C++ ΠΈΠ»ΠΈ Java.

ΠšΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ для сравнСния

Π•ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅Π², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ языка программирования. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΎΡ‚ΠΊΡ€ΠΎΠ²Π΅Π½Π½ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ ΠΈΡ… всС Π² этом сравнСнии C++ ΠΈΠ»ΠΈ Java, я Π²Ρ‹Π±Ρ€Π°Π» Ρ‚Ρ€ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅, каТСтся, подходят всСм.

Π’Ρ€ΠΈ рассматриваСмых критСрия — ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ ΠΈ Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π° спСциалистов. Π”Π°Π²Π°ΠΉΡ‚Π΅ быстро пройдСмся ΠΏΠΎ Π½ΠΈΠΌ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ нСпосрСдствСнно ΠΊ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ C++ ΠΈΠ»ΠΈ Java.

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ смыслС, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ являСтся ΠΎΡ‚ΠΏΡ€Π°Π²Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π°Π½Π°Π»ΠΈΠ·Π°. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ — Ссли язык программирования ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² Π»ΡŽΠ±Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡Π°Ρ…, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Π²Π΅Ρ€Π½ΠΎ? Как Π±Ρ‹ это Π½ΠΈ Π±Ρ‹Π»ΠΎ, Π½Π΅ всСгда всС Ρ‚Π°ΠΊ просто. НСкоторыС языки ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ аспСкты ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, — это просто способ ΠΈΡ… построСния ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π΄Π°ΠΆΠ΅ нСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ язык программирования ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСэффСктивным Β«Π½Π° Π±ΡƒΠΌΠ°Π³Π΅Β», Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π²Π»ΠΈΡΡŽΡ‚ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅. НапримСр, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ языки программирования ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Ρ†Π΅Π»Π΅ΠΉ ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ мСньшСй ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ρ‡Π΅ΠΌ ΠΈΡ… ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚Ρ‹ (я Π³ΠΎΠ²ΠΎΡ€ΡŽ ΠΎ C#).

ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ

Π₯отя Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ это Π½Π΅ Π²Π°ΠΆΠ½Ρ‹ΠΉ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΉ, ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Π½Π° самом Π΄Π΅Π»Π΅ являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Ρ… Ρ‡Π΅Ρ€Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Π»Π°Π΄Π°Ρ‚ΡŒ язык программирования. ЧСстно говоря, это становится Π΅Ρ‰Π΅ Π±ΠΎΠ»Π΅Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ, Ссли Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ ΠΎ сравнСнии C++ ΠΈΠ»ΠΈ Java. ΠŸΠΎΠ·Π²ΠΎΠ»ΡŒΡ‚Π΅ ΠΌΠ½Π΅ Ρ€Π°Π·ΡŠΡΡΠ½ΠΈΡ‚ΡŒ.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ·ΠΊΠΈΠΉ язык программирования, скаТСм, для Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ интСрСса. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π°ΠΉΠ΄ΠΈΡ‚Π΅ Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ ΠΈ ΠΏΠΎΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π°ΠΉΡ‚ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ процСссу обучСния. Π˜Ρ‚Π°ΠΊ, Π²Ρ‹ Π³ΡƒΠ³Π»ΠΈΡ‚Π΅ этот язык программирования … Волько ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅ практичСски Π½Π΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π½Π΅ΠΌ. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π²Ρ‹, скорСС всСго, Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Ρ€Π°Π·Ρ€ΠΎΠ·Π½Π΅Π½Π½Ρ‹Π΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹, Π½ΠΎ это Π½Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π² Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ всСстороннСго, ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ понимания рассматриваСмого языка. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΡ€Π°ΠΉΠ½Π΅ нСприятно, Π½ΠΎ это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ происходит, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ€Π΅ΡˆΠ°Π΅Ρ‚Π΅ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ язык, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅Ρ‚ БАЗЫ — Π·Π° ΡΠΈΠ»ΡŒΠ½Ρ‹ΠΌ языком программирования стоит сильноС сообщСство.

БильноС сообщСство Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ρ‚Π°ΠΊΠΈΠ΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ C++ ΠΈΠ»ΠΈ Java, Π²Π°ΠΆΠ½Ρ‹ Β«ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΒ», Π½ΠΎ Ссли Ρƒ языка Π½Π΅Ρ‚ сообщСства, Π΅ΡΡ‚ΡŒ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Ρ€Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ исчСзнСт. Энтузиасты ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ свои Π»ΡŽΠ±ΠΈΠΌΡ‹Π΅ языки, слСдя Π·Π° ΠΈΡ… Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ΠΌ, создавая Ρ†Π΅Π½Π½Ρ‹ΠΉ ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…, ΠΈΠ»ΠΈ Π»ΡŽΠ±Ρ‹ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ способом распространяя ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ.

Π—Π°Ρ€ΠΏΠ»Π°Ρ‚Π° спСциалистов

НаконСц, Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π° программиста. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, вас Π½Π΅ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚, Ссли я скаТу, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Π½Ρ‹Π΅ спСциалисты ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ языкам программирования ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Ρ‹. Π­Ρ‚ΠΎ зависит ΠΎΡ‚ мноТСства Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ², Π½ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· основных — это ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ, спрос Π½Π° язык, ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ программиста, потрСбности ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ (работодатСля) ΠΈ Ρ‚. Π΄. ИмСнно поэтому люди всС большС ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ языкам — ΠΎΠ½ΠΈ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ ΠΏΠΎ своСму Π΄ΠΈΠ·Π°ΠΉΠ½Ρƒ ΠΈ поэтому ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ситуациях.

Если Π±Ρ‹ Π²Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ ΠΎΠ½Π»Π°ΠΉΠ½-Ρ„ΠΎΡ€ΡƒΠΌΡ‹, посвящСнныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, Π²Ρ‹ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ бСсчислСнноС мноТСство людСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ просто ΠΈΠ·-Π·Π° Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Ρ‹ ΠΈ бСзопасности Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π‘ ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ сказанного Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ, насколько Π²Π°ΠΆΠ½Π° Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π° ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ языка программирования для Π½Π°Ρ‡Π°Π»Π° обучСния.

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС Π±Ρ‹Π»ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‰Π΅, я ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡΡŒ ΠΏΡ€ΠΎΠΉΡ‚ΠΈΡΡŒ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΈΠ· ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² ΠΈ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, Π² Ρ‡Π΅ΠΌ C++ ΠΈΠ»ΠΈ Java Ρ‚Π°ΠΊ Ρ…ΠΎΡ€ΠΎΡˆ. Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

Π£ ΠΊΠ°ΠΊΠΎΠ³ΠΎ языка Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ?

Π₯отя ΠΎΠ±Π° языка программирования довольно Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ ΠΏΠΎ своСму Π΄ΠΈΠ·Π°ΠΉΠ½Ρƒ. Π―Π·Ρ‹ΠΊ программирования Java ΠΈ язык C++ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ пСрвоклассными с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, язык C++ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ быстрСС — это ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ Java Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π²ΠΎ врСмя выполнСния, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ процСссы, выполняСмыС языком, Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌΠΈ. Однако ΠΊΠΎΠ³Π΄Π° Π΄Π΅Π»ΠΎ Π΄ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ силы языка (возмоТностСй), ΠΎΠ±Π° эти языка ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ сСбя Ρ…ΠΎΡ€ΠΎΡˆΠΎ, хотя ΠΈ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ.

Какой ΠΈΠ· языков популярнСС?

НС сСкрСт, Ρ‡Ρ‚ΠΎ ΠΈ Java, ΠΈ C++ ΠΎΡ‡Π΅Π½ΡŒ извСстны ΠΈ популярны. Π’ Ρ‚ΠΎ врСмя , ΠΊΠΎΠ³Π΄Π° C++ Π΄ΠΎΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π» Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅, язык программирования Java Π½Π°Ρ‡Π°Π» Π½Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ всС Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Π² 2012 Π³ΠΎΠ΄Ρƒ. БСгодня язык программирования Java ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ Π±ΠΎΠ»Π΅Π΅ популярная Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π°, Ρ…ΠΎΡ‚ΡŒ ΠΎΠ½ Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ использования, ΠΊΠ°ΠΊ язык C++. Π£ ΠΎΠ±ΠΎΠΈΡ… языков Π΅ΡΡ‚ΡŒ свои ΠΏΠΎΠΊΠ»ΠΎΠ½Π½ΠΈΠΊΠΈ, ΠΈ Π΅ΡΡ‚ΡŒ мноТСство ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π½ΠΈΡ…, доступной ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ, ΠΊΡ‚ΠΎ ΠΈΡ‰Π΅Ρ‚, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π½ΠΈΡ… ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ.

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π°

  • ΠžΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ курсов
  • ΠŸΡ€ΠΎΡΡ‚Π°Ρ навигация
  • НСт тСхничСских ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ

  • ΠžΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ курсов
  • ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° 30-Π΄Π½Π΅Π²Π½ΠΎΠ³ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° срСдств
  • БСсплатныС сСртификаты ΠΎΠ± ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ На ВсС ΠšΡƒΠΏΠΎΠ½Ρ‹ Π›ΡƒΡ‡ΡˆΠΈΡ… ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ Для Онлайн ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΡ

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π°

  • ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Π² использовании
  • ΠŸΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ качСствСнный ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚
  • ΠžΡ‡Π΅Π½ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ Π² своих Ρ†Π΅Π½Π°Ρ…

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ

  • БСсплатныС сСртификаты ΠΎΠ± ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ
  • Ѐокус Π½Π° Π½Π°Π²Ρ‹ΠΊΠΈ Π½Π°ΡƒΠΊΠΈ ΠΎ Π΄Π°Π½Π½Ρ‹Ρ…
  • Π“ΠΈΠ±ΠΊΠΎΠ΅ расписаниС занятий

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ На ВсС ΠšΡƒΠΏΠΎΠ½Ρ‹ Π›ΡƒΡ‡ΡˆΠΈΡ… ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ Для Онлайн ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΡ

БпСциалисты ΠΊΠ°ΠΊΠΎΠ³ΠΎ языка Π·Π°Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ большС?

Богласно Glassdoor.com, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Java ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΎΠΊΠΎΠ»ΠΎ 88 100 Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ² БША Π² Π³ΠΎΠ΄ ΠΈΠ»ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ 7350 Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ² БША Π² мСсяц. Π’ это ΠΆΠ΅ врСмя, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ C++, ΠΏΠΎ ΠΎΡ†Π΅Π½ΠΊΠ°ΠΌ, Π·Π°Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ 95 000 Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ² БША Π² Π³ΠΎΠ΄, Ρ‡Ρ‚ΠΎ составляСт ΠΎΠΊΠΎΠ»ΠΎ 8000 Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ² БША Π² Π³ΠΎΠ΄!

ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ программисты Π½Π° Π‘++ Π·Π°Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ большС Π΄Π΅Π½Π΅Π³β€¦ΠŸΠΎΡ‡Π΅ΠΌΡƒ это Ρ‚Π°ΠΊ? Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ это связано со ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ языка — C++ считаСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· самых слоТных языков программирования Π² ΠΌΠΈΡ€Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ слоТно ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ.

Π‘Π°ΠΌΡ‹Π΅ ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½Ρ‹Π΅ Π‘Ρ‚Π°Ρ‚ΡŒΠΈ

ВзглянитС Π½Π° Π½Π°ΡˆΡƒ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ руководств, статСй ΠΈ ΡƒΡ€ΠΎΠΊΠΎΠ² ΠΏΡ€ΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ для ΠΎΠ½Π»Π°ΠΉΠ½ обучСния ΠΈ массовыС ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ ΠΎΠ½Π»Π°ΠΉΠ½ курсы. ВсСгда Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π² курсС ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΠΉΡ‚Π΅ Π²Π·Π²Π΅ΡˆΠ΅Π½Π½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ!

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π˜Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π΄Π²ΡƒΡ… языков программирования стоит ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ? Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся абстрактным ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² создании Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ довольно слоТСн — C++ — Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ Π²Ρ‹Π±ΠΎΡ€. Однако, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π±Ρ‹Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ простоС — язык Java Π²Π°ΠΌ прСкрасно ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚.

Каким Π±Ρ‹ Π½ΠΈ Π±Ρ‹Π» ваш Π²Ρ‹Π±ΠΎΡ€, я надСюсь, Ρ‡Ρ‚ΠΎ ΠΈΠ· этой ΡΡ‚Π°Ρ‚ΡŒΠΈ Π²Ρ‹ ΡƒΠ·Π½Π°Π»ΠΈ большС ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ C++ ΠΈΠ»ΠΈ Java, Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π°Ρ… спСциалистов, ΠΏΠ»ΡŽΡΠ°Ρ… ΠΈ минусах ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ языка. Π£Π΄Π°Ρ‡ΠΈ Π² ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ!

ΠžΡΡ‚Π°Π²ΡŒΡ‚Π΅ вашС чСстноС ΠΌΠ½Π΅Π½ΠΈΠ΅

ΠžΡΡ‚Π°Π²ΡŒΡ‚Π΅ вашС чСстноС ΠΌΠ½Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠΌΠΎΠ³ΠΈΡ‚Π΅ тысячам людСй Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ для ΠΎΠ½Π»Π°ΠΉΠ½ обучСния. ВсС ΠΎΡ‚Π·Ρ‹Π²Ρ‹, ΠΏΠΎΠ·ΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΈΠ»ΠΈ Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅, Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ, Ссли ΠΎΠ½ΠΈ чСстны. ΠœΡ‹ Π½Π΅ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ΅ΠΌ прСдвзятыС ΠΎΡ‚Π·Ρ‹Π²Ρ‹ ΠΈ спам. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ вашим ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ, ΠΌΠ½Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ Π΄Π°Ρ‚ΡŒ совСт — Ρƒ вас Π΅ΡΡ‚ΡŒ всё Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅!

Java ΠΈ C#: Ρ‡Ρ‚ΠΎ всС-Ρ‚Π°ΠΊΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ Java ΠΈ Π‘# β€” Ρ‚Π΅ΠΌΠ° многочислСнных ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-Π±Π°Ρ‚Π°Π»ΠΈΠΉ ΠΈ Ρ…ΠΎΠ»ΠΈΠ²Π°Ρ€ΠΎΠ². Π­Ρ‚ΠΎΠΌΡƒ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ Π΄Π°ΠΆΠ΅ посвящСна своя ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ страничка Π² Π’ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ. Π‘Ρ…Π²Π°Ρ‚ΠΊΠ° Π² ΡƒΠΌΠ°Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π½Π°Ρ‡Π°Π»Π°ΡΡŒ Π΄Π°Π²Π½ΠΎ ΠΈ ΠΎΠ½Π°, каТСтся, Π²Ρ‹ΡˆΠ»Π° Π·Ρ€Π΅Π»ΠΈΡ‰Π½Π΅Π΅, Ρ‡Π΅ΠΌ Π±ΠΎΡ€ΡŒΠ±Π° Android с iOS. Но Π½Π° сСгодняшний дСнь страсти Π²Ρ€ΠΎΠ΄Π΅ Π±Ρ‹ ΡƒΠ»Π΅Π³Π»ΠΈΡΡŒ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ язык занял своС мСсто ΠΈ развиваСтся согласно собствСнной ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ.

Π’ΠΎΡ‚ Ρ‚ΡƒΡ‚ Ρ‚ΠΎ ΠΌΡ‹ ΠΈ Ρ€Π΅ΡˆΠΈΠ»ΠΈ подвСсти Ρ‡Π΅Ρ€Ρ‚Ρƒ. НС Π±ΡƒΠ΄Π΅ΠΌ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ языки с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния вакансий ΠΈ коммСрчСских пСрспСктив. ΠŸΡ€ΠΎΡΡ‚ΠΎ спросим Ρƒ Π½Π°ΡˆΠΈΡ… экспСртов, ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°ΡŽΡ‰ΠΈΡ… Π² IT-АкадСмии, ΠΎΠ± ΠΈΡ… ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… отличиях ΠΈ идСях. ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ, ΠΏΠΎΡ€Π° Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠΈΡ€ΠΈΠ΅?

Ну Π° Ссли ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎ, Ρ‚ΠΎ вопрос Π²Ρ‹Π±ΠΎΡ€Π° языка программирования для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… свою ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Ρƒ Π² IT стоит ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ остро. ΠŸΡ€ΠΈ этом СдинствСнно Π²Π΅Ρ€Π½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° просто Π½Π΅ сущСствуСт. ΠœΡ‹ попросили Π½Π°ΡˆΠΈΡ… экспСртов ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ языки с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния практичСского примСнСния ΠΏΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡.

Π‘Ρ‚Π΅ΠΏΠ°Π½ Π―ΠΊΠΎΠ²Π΅Π½ΠΊΠΎ,Β Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ β€œLFIRON” (Бловакия), Π±ΠΎΠ»Π΅Π΅ 10 Π»Π΅Ρ‚ ΠΎΠΏΡ‹Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° Java,Β ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»ΡŒ курса Java Developer:

Π―Π·Ρ‹ΠΊ C# приятСн Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΌ большС синтаксичСского сахара, ΠΏΡ€ΠΎΡ‰Π΅ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Π²ΠΈΠ½Π΄ΠΎΠ²Ρ‹Π΅ DLL. ΠœΡ‹ ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ большой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с C# Π½Π° Java ΠΈ выяснили, Ρ‡Ρ‚ΠΎ C# Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмой Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ быстрСС; Π² Java Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° ΠΏΠΎ Π±Π°ΠΉΡ‚Π°ΠΌ β€” Ρ€Π°Π·ΠΎΡ€ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ опСрация.

Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Java β€” Π±ΠΎΠ»Π΅Π΅ открытая тСхнология. Если Ρƒ вас появилась ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ ΠΈΠ»ΠΈ срСдой, Ρ‚ΠΎ шансов ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΈΡ… ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ большС, Ρ‡Π΅ΠΌ Π² случаС с Π±ΠΎΠ»Π΅Π΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌΠΈ Microsoft, хотя ΠΈ Ρ‚Π°ΠΌ это Ρ‚ΠΎΠΆΠ΅ ΠΈΠ½ΠΎΠ³Π΄Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. МнС это тяТСло сСйчас ΠΎΡ†Π΅Π½ΠΈΠ²Π°Ρ‚ΡŒ, Π½ΠΎ Ρ€Π°Π½ΡŒΡˆΠ΅ Ρ†Π΅Π½Π° Π²Ρ…ΠΎΠ΄Π° для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° Π² C# Π±Ρ‹Π»Π° Π½ΠΈΠΆΠ΅.

Π’ Java довольно ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π·Π½Π°Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ разбросаны ΠΏΠΎ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Ρƒ, Π° Ρƒ Microsoft стратСгия ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ всС Π² ΠΎΠ΄Π½ΠΎΠΌ мСстС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π΅ΡˆΠ΅Π²ΠΈΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ. Но Ρ‡Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρƒ вас знания, Ρ‚Π΅ΠΌ большС ΠΎΠ½ΠΈ цСнятся Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅ Ρ‚Ρ€ΡƒΠ΄Π°.

Π“Π΄Π΅-Ρ‚ΠΎ Π² курсС ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠΈ доказываСтся, Ρ‡Ρ‚ΠΎ всС языки программирования эквивалСнтны. ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Java ΠΊΠ°ΠΊ языка β€” это Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ чСрСсчур быстро, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²ΠΎ ΡΠΆΠΈΠΌΠ°Ρ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ ΠΈΠ»ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΎΡ‡Π΅Π½ΡŒ большими ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ·-Π·Π° Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Ρ… расходов Π»ΡƒΡ‡ΡˆΠ΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² ΠΊΡƒΡ‡Π΅ (heap) C/C++. Но Ссли трСбования ΠΊ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΡƒΠΌΠ΅Ρ€Π΅Π½Π½Ρ‹Π΅, Ρ‚ΠΎ, Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΡΡ‚ΠΈΠ³Π½ΡƒΡ‚ΡŒ высокой Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ Π½Π° Java.

Β 

ОлСг КолСсников, Software Engineer, Axmor Software, Inc, Новосибирск, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π° языках C++/C#, ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»ΡŒΒ ΠΊΡƒΡ€ΡΠ° C# (C Sharp) ΠΎΠ½Π»Π°ΠΉΠ½:

Π‘# β€” это ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Π½Π½Ρ‹ΠΉ высокоуровнСвый ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования. На ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ .Net ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ любоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚ ΠΎΠΊΠΎΠ½Π½ΠΎΠΉ Windows ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ соврСмСнной Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ WCF) ΠΈ соврСмСнных Π²Π΅Π± сайтов (с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ASP.NET) Π΄ΠΎ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΈ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ Π²Π»Π°Π΄Π΅Π½ΠΈΠ΅ языком C# позволяСт Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ прилоТСния для любой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы. НапримСр, компания Xamarin Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Mono β€” Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ .Net   для UNIX-ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ язык C# ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΊΠΎΠ½ΠΊΡƒΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ языками программирования. Он Π½Π΅ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈ Π½Π΅ Ρ…ΡƒΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… языков, ΠΎΠ½ просто Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ свою долю Ρ€Ρ‹Π½ΠΊΠ°, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½ΡƒΡŽ.

ВсС эти языки Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ идСю ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования. C#, ΠΊΠ°ΠΊ ΠΈ Java являСтся JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ языком, Ρ‚.Π΅. Π² процСссС компиляции ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ создаётся ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄, Π° Π² процСссС выполнСния самой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, срСда исполнСния ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ этот Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ позволяСт Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ кроссплатформСнныС прилоТСния, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ C++, Π³Π΄Π΅ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, скорСС всСго, придСтся Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ своё ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ρ…ΠΎΡ€ΠΎΡˆΠΎ написанная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° Π‘++ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ Π°Π½Π°Π»ΠΎΠ³Π°, написанного Π½Π° языкС с JIT-компиляциСй. Π§Ρ‚ΠΎ касаСтся ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ†ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ C#, я Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ послСдний развиваСтся быстрСС благодаря стараниям ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Microsoft.

Β 

Николай Волстокулаков, ΡΡ‚Π°Ρ€ΡˆΠΈΠΉ ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»ΡŒ Π€Π°ΠΊΡƒΠ»ΡŒΡ‚Π΅Ρ‚Π° Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Π² НГУ, Π±ΠΎΠ»Π΅Π΅ 11 Π»Π΅Ρ‚ ΠΎΠΏΡ‹Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Java, ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»ΡŒΒ ΠΊΡƒΡ€ΡΠ°Β Advanced Java with EE (Java для ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ…):

Никто ΠΈΠ· Π½ΠΈΡ… Π½Π΅ ΡƒΠΌΡ€Π΅Ρ‚ Π² блиТайшСС дСсятилСтиС. Π‘Π°ΠΌΡ‹ΠΉ острый этап ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ†ΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Ρ‚ΠΎΠΆΠ΅ ΠΏΠΎΠ·Π°Π΄ΠΈ Π»Π΅Ρ‚ Π΄Π΅ΡΡΡ‚ΡŒ ΠΊΠ°ΠΊ. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ языка Π΅ΡΡ‚ΡŒ свои области, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ½ΠΈ ΡƒΠΆΠ΅ ΠΏΡ€ΠΎΡ‡Π½ΠΎ обосновались. ΠšΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ†ΠΈΡ ΠΈ ΠΎΠ±ΠΌΠ΅Π½ идСями ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ пошла Π½Π° ΠΏΠΎΠ»ΡŒΠ·Ρƒ ΠΎΠ±ΠΎΠΈΠΌ. Π‘Ρ„Π΅Ρ€Π° примСнСния Java Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΡˆΠΈΡ€Π΅ ΠΈ Ρ€Ρ‹Π½ΠΎΠΊ программистов большС. Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ Π΅ΡΡ‚ΡŒ Tiobe index, Π³Π΄Π΅ Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ отличаСтся Π² Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π°. ОсновноС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ C# ΠΏΠΎΠΊΠ° Ρ‚Π°ΠΊ ΠΈ ограничиваСтся Windows-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ, Π½ΠΎ ΠΈΡ… доля Π½Π° мобильном Ρ€Ρ‹Π½ΠΊΠ΅ Π½ΠΈΡ‡Ρ‚ΠΎΠΆΠ½Π°, Π° Π½Π° сСрвСрном Ρ€Ρ‹Π½ΠΊΠ΅ испытываСт Π΄Π°Π²Π»Π΅Π½ΠΈΠ΅ со стороны Linux. Π’Π°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΠΊΠ°ΠΊ Google, Facebook, Twitter, строят свой бизнСс ΠΈΠ· сотСн тысяч сСрвСров Π±Π΅Π· использования Windows & .Net/C#. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ desktop ΠΏΠ°Π΄Π°Π΅Ρ‚ ΠΈΠ·-Π·Π° ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚ΠΎΠ². ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ с использованиСм C# Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ Windows Π΅ΡΡ‚ΡŒ, Π½ΠΎ особой популярности Π½Π΅ Π·Π°Π²ΠΎΠ΅Π²Π°Π»ΠΈ.

Π“Ρ€Π°Π½ΠΈΡ†Ρ‹ примСнимости Java β€” Ρ€Π°Π±ΠΎΡ‚Π° Π½Π° Π½ΠΈΠ·ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ с hardware, ядром ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, систСмы Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ Ρ‚Π°ΠΌ, Π³Π΄Π΅ трСбуСтся Π²Ρ‹ΠΆΠ°Ρ‚ΡŒ ΠΈΠ· ΠΆΠ΅Π»Π΅Π·Π° всС, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ, ΠΈ Π΄Π°ΠΆΠ΅ Ρ‡ΡƒΡ‚ΡŒ большС. Π‘Ρ‚Π°Ρ€Ρ‚Π°ΠΏΡ‹, Ссли Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ Π½Π΅ ΠΎΠ± Android, Π° ΠΎ Web-сСрвисах, Ρ‡Π°Ρ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ (PHP, JavaScript, Python, Ruby).

А Π²ΠΎΡ‚ интСграция Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… распрСдСлСнных систСм β€” сильная сторона Java-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π­Ρ‚ΠΎ связано, Π½Π° ΠΌΠΎΠΉ взгляд, с двумя Π²Π΅Ρ‰Π°ΠΌΠΈ: ΠΊΡ€ΠΎΡΡΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ самого Java ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ практичСски со всСми систСмами ΠΈ сСрвисами. Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ JVM ΠΈ мноТСство Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ трансформациями Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… систСм ΠΈΠ· самых экзотичСских Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ².

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Как Π½ΠΈ ΠΊΡ€ΡƒΡ‚ΠΈ, ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° вопрос, поставлСнный Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΡ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ СдинствСнно ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Π‘ΠΊΠΎΡ€Π΅Π΅ всСго Π΄Π°ΠΆΠ΅, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» Π΅Ρ‰Π΅ большС Π·Π°ΠΏΡƒΡ‚Π°Π», ΠΎΠ΄Π½Π°ΠΊΠΎ это ΠΎΡ‚Π½ΡŽΠ΄ΡŒ Π½Π΅ Π²ΠΈΠ½Π° Π½Π°ΡˆΠΈΡ… экспСртов β€” Ρ‚Π°ΠΊΠΎΠ²Π° ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π° самих языков программирования. Π’ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, это инструмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ для Ρ€Π°Π·Π½Ρ‹Ρ… Ρ†Π΅Π»Π΅ΠΉ ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ Π² Ρ€Π°Π·Π½Ρ‹Π΅ Ρ€ΡƒΠΊΠΈ. И Π² зависимости ΠΎΡ‚ этого мСняСтся ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» ΠΈ ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ.

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ C++ с языками Java ΠΈ C# [АйВи Π±ΡƒΠ±Π΅Π½]

ЦСлью создания C++ Π±Ρ‹Π»ΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ возмоТностСй Π‘ΠΈ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространённого языка систСмного программирования. ΠžΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π½Π° Ρ‚Ρƒ ΠΆΠ΅ ΡΠ°ΠΌΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ примСнСния, C++ унаслСдовал мноТСство Π½Π΅ самых Π»ΡƒΡ‡ΡˆΠΈΡ…, с тСорСтичСской Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния, особСнностСй Π‘ΠΈ. ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Π΅ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… придСрТивался Π°Π²Ρ‚ΠΎΡ€ языка, ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ нСдостатки C++.

Π’ области ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ программирования Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²ΠΎΠΉ C++ стал Π΅Π³ΠΎ язык-ΠΏΠΎΡ‚ΠΎΠΌΠΎΠΊ, Java. НСсмотря Π½Π° ΠΏΡ€Π΅Π΅ΠΌΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ C++, Java ΡΡ‚Ρ€ΠΎΠΈΠ»Π°ΡΡŒ Π½Π° ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΈΠ½ΠΎΠΉ основС, Π΅Ρ‘ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π΅ Π±Ρ‹Π»ΠΈ связаны трСбованиями совмСстимости с языком-ΠΏΡ€Π΅Π΄ΠΊΠΎΠΌ ΠΈ обСспСчСния максимально достиТимой эффСктивности, благодаря Ρ‡Π΅ΠΌΡƒ ΠΎΠ½ΠΈ смогли ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ язык, ΠΎΡ‚ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ мноТСства синтаксичСских срСдств, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ идСологичСской цСлостности языка. ПозТС Ρ„ΠΈΡ€ΠΌΠ° ΠœΠ°ΠΉΠΊΡ€ΠΎΡΠΎΡ„Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΠ»Π° язык C#, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ собой Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½Ρƒ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ C++ Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ, Ρ‡Ρ‚ΠΎ ΠΈ Java. Π’ дальнСйшСм появился язык Nemerle, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΊ срСдствам C# Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ срСдства Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования. Π•Ρ‰Ρ‘ ΠΏΠΎΠ·ΠΆΠ΅ появилась ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° объСдинСния эффСктивности C++ с Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Java ΠΈ C# β€” Π±Ρ‹Π» ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ язык D, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ признания.

Java ΠΈ C++ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π΄Π²Π° языка-ΠΏΠΎΡ‚ΠΎΠΌΠΊΠ° Π‘ΠΈ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… сообраТСний ΠΈ ΠΏΠΎΡˆΠ΅Π΄ΡˆΠΈΡ…, вслСдствиС этого, ΠΏΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ путям. Π’ этой связи прСдставляСт интСрСс сравнСниС Π΄Π°Π½Π½Ρ‹Ρ… языков (всё, сказанноС Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΎ Java, ΠΌΠΎΠΆΠ½ΠΎ с Ρ€Π°Π²Π½Ρ‹ΠΌ успСхом отнСсти ΠΊ языкам C# ΠΈ Nemerle, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² рассматриваСмых дСталях эти языки ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ лишь внСшнС).

  • Бинтаксис

C++ сохраняСт ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с C, насколько это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. Java сохраняСт внСшнСС ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ C ΠΈ C++, Π½ΠΎ, Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, сильно отличаСтся ΠΎΡ‚ Π½ΠΈΡ… β€” ΠΈΠ· языка ΡƒΠ΄Π°Π»Π΅Π½ΠΎ большоС число синтаксичСских срСдств, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Ρ… Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Java Π±Ρ‹Π²Π°ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΈΡ… Π°Π½Π°Π»ΠΎΠ³Π°ΠΌΠΈ Π½Π° Π‘++. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Java ΠΏΡ€ΠΎΡ‰Π΅, Ρ‡Ρ‚ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ ΠΊΠ°ΠΊ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ языка, Ρ‚Π°ΠΊ ΠΈ созданиС трансляторов для Π½Π΅Π³ΠΎ.

Java-ΠΊΠΎΠ΄ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² дальнСйшСм интСрпрСтируСтся ΠΈΠ»ΠΈ компилируСтся, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ C++ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡŽ Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ (хотя, тСорСтичСски, Π½ΠΈΡ‡Ρ‚ΠΎ Π½Π΅ ΠΌΠ΅ΡˆΠ°Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ для C++ трансляторы Π² ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄). Π­Ρ‚ΠΎ ΡƒΠΆΠ΅ опрСдСляСт Ρ€Π°Π·Π½ΠΈΡ†Ρƒ Π² сфСрах примСнСния языков: Java вряд Π»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована ΠΏΡ€ΠΈ написании Ρ‚Π°ΠΊΠΈΡ… спСцифичСских ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠ°ΠΊ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ устройств ΠΈΠ»ΠΈ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Π΅ систСмныС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹. ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ исполнСния Java Π΄Π΅Π»Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π΄Π°ΠΆΠ΅ ΠΎΡ‚ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ (Π² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄) ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ пСрСносимыми.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠ΅ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ΠΈ срСда исполнСния ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Java Π½Π° любой Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈ Π² любой ОБ, Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, усилия ΠΏΠΎ ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ (ΠΏΡ€ΠΈ соблюдСнии Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ ΠΏΠΎ созданию пСрСносимых ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ β€” ΠΈ вовсС Π½ΡƒΠ»Π΅Π²Ρ‹Π΅). Π¦Π΅Π½ΠΎΠΉ пСрСносимости становится потСря эффСктивности β€” Ρ€Π°Π±ΠΎΡ‚Π° срСды исполнСния ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹ΠΌ расходам.

C++ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Β«Π·Π°Ρ…Π²Π°Ρ‚ рСсурсов ΠΏΡƒΡ‚Ρ‘ΠΌ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈΒ» (RAII), ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ рСсурсы ассоциированы с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ автоматичСски ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€ΡƒΡˆΠ΅Π½ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, std::vector <T> ΠΈ std::ifstream). Π’Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΊΠΎΠ³Π΄Π° программист, выдСляя рСсурсы (ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΠΎΠ΄ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ Ρ‚. ΠΏ.), обязан явно ΠΏΠΎΠ·Π°Π±ΠΎΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎ своСврСмСнном ΠΈΡ… освобоТдСнии. Java Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² срСдС со сборкой мусора, которая автоматичСски отслСТиваСт ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½ΠΈΠ΅ использования ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ освобоТдаСт Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡƒΡŽ ΠΈΠΌΠΈ ΠΏΠ°ΠΌΡΡ‚ΡŒ, Ссли Π² этом Π΅ΡΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ, Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Π ΡƒΡ‡Π½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ Π² систСмном ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, Π³Π΄Π΅ трСбуСтся ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ рСсурсами, RAII ΠΈ сборка мусора ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ Π² ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ стСпСни ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°ΡŽΡ‚ программиста ΠΎΡ‚ нСобходимости ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠΌΠ΅Π½Ρ‚ прСкращСния использования рСсурсов. Π‘Π±ΠΎΡ€Ρ‰ΠΈΠΊ мусора Java Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ систСмных рСсурсов, Ρ‡Ρ‚ΠΎ сниТаСт ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π»ΠΈΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Java дСтСрминированности выполнСния ΠΈ способСн ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π° ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. Π€Π°ΠΉΠ»Ρ‹, ΠΊΠ°Π½Π°Π»Ρ‹, сокСты, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ графичСского интСрфСйса программист Π½Π° Java всСгда освобоТдаСт явно.

Π’ Java Π΅ΡΡ‚ΡŒ Ρ‡Ρ‘Ρ‚ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ стандарты Π½Π° Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄, Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ, Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ, Π΄ΠΈΠ°Π»ΠΎΠ³, доступ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΠΌ Ρ‚ΠΈΠΏΠΎΠ²Ρ‹ΠΌ прилоТСниям. C++ Π² этом ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ свободСн. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Ρ‹ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ, доступ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ‚. Π΄. ΡΠ²Π»ΡΡŽΡ‚ΡΡ нСдостатком, Ссли программист Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ свой собствСнный стандарт.

  • Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ

C++ сохраняСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΌΠΈ указатСлями. Π’ Java ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π΅Ρ‚. ИспользованиС ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ часто являСтся ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ошибок, Π½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠ³ΠΎ программирования. Π’ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, C++ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ Π½Π°Π±ΠΎΡ€ΠΎΠΌ срСдств (конструкторы ΠΈ дСструкторы, стандартныС ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹, ссылки), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ освобоТдСниС памяти Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΈ опасныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с указатСлями. Однако Ρ‚Π°ΠΊΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΉ ΠΊΡƒΠ»ΡŒΡ‚ΡƒΡ€Ρ‹ программирования, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π² языкС Java ΠΎΠ½ΠΎ рСализуСтся автоматичСски.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π‘++, Java являСтся чисто ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ языком, Π±Π΅Π· возмоТности ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠ³ΠΎ программирования. Для объявлСния свободных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ»ΠΈ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Java Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ„ΠΈΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ классы, содСрТащиС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ static Ρ‡Π»Π΅Π½Ρ‹ . Для задания Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΄Π°ΠΆΠ΅ самой простой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Java Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π΅Ρ‘ Π² класс .

Π² C++ RTTI ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΡ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ собой ΠΈ с Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ значСниями Ρ‚ΠΈΠΏΠΎΠ². Π’ систСмС Java доступна Π±ΠΎΠ»Π΅Π΅ подробная информация ΠΎ Ρ‚ΠΈΠΏΠ°Ρ…. Π­Ρ‚Ρƒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² C++, имСя ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΈΠΏΠ°Ρ… Π²ΠΎ врСмя компиляции CTTI.

  • ΠŸΡ€Π΅ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€

C++ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ прСпроцСссор для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ классов, для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Ρ… Π² исходном ΠΊΠΎΠ΄Π΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ позволяСт ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ ΠΌΠ΅Ρ‚Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ с использованиСм прСпроцСссора, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅, Π² частности, Ρ€Π΅ΡˆΠ°Π΅Ρ‚ слоТныС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ высокоуровнСвого дублирования ΠΊΠΎΠ΄Π°[8]. Π•ΡΡ‚ΡŒ ΠΌΠ½Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ этот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ нСбСзопасСн, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π° макросов прСпроцСссора Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹, Π° сами макросы ΠΏΠΎΡ‡Ρ‚ΠΈ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ связаны с конструкциями языка. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ слоТным ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π°ΠΌ ΠΈΠΌΡ‘Π½. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния, C++ прСдоставляСт достаточно срСдств (константы, ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹, встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ) для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ практичСски ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ использованиС прСпроцСссора. Java ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΠ»Π° прСпроцСссор ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ, избавившись Ρ€Π°Π·ΠΎΠΌ ΠΎΡ‚ всСх ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с Π΅Π³ΠΎ использованиСм, потСряв ΠΏΡ€ΠΈ этом возмоТности мСтапрограммирования прСпроцСссора ΠΈ тСкстовых Π·Π°ΠΌΠ΅Π½ Π² ΠΊΠΎΠ΄Π΅ срСдствами языка.

ΠžΡ‚Π»ΠΈΡ‡ΠΈΡ языков приводят ΠΊ оТСсточённым спорам ΠΌΠ΅ΠΆΠ΄Ρƒ сторонниками Π΄Π²ΡƒΡ… языков ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΠΎΠΉ язык Π»ΡƒΡ‡ΡˆΠ΅. Π‘ΠΏΠΎΡ€Ρ‹ эти Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ бСспрСдмСтны, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ сторонники Java ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ различия говорящими Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ Java, Π° сторонники C++ ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅. НСкоторая аргумСнтация устарСваСт со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΠΏΡ€Ρ‘ΠΊΠΈ Π² нСэффСктивности Java ΠΈΠ·-Π·Π° наличия срСды исполнСния, Π±Ρ‹Π²ΡˆΠΈΠ΅ справСдливыми Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π΅ 1990-Ρ… Π³ΠΎΠ΄ΠΎΠ², Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π»Π°Π²ΠΈΠ½ΠΎΠΎΠ±Ρ€Π°Π·Π½ΠΎΠ³ΠΎ роста ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² ΠΈ появлСния Π±ΠΎΠ»Π΅Π΅ эффСктивной Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ исполнСния (JIT) Π² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅ потСряли Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. C++, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, развивался, ΠΈ ряд Π΅Π³ΠΎ нСдостатков устранён Π² послСдних вСрсиях стандарта (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, появился ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ частичной спСцификации шаблонов).

Π”Π°Π»Π΅ΠΊΠΎ Π½Π΅ всС программисты ΡΠ²Π»ΡΡŽΡ‚ΡΡ сторонниками ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· языков. По мнСнию Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° программистов, Java ΠΈ C++ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚Π°ΠΌΠΈ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ областями примСнимости. Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±ΠΎΡ€ языка для ΠΌΠ½ΠΎΠ³ΠΈΡ… Π·Π°Π΄Π°Ρ‡ являСтся вопросом Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ вкуса.

C# ΠΏΡ€ΠΎΡ‚ΠΈΠ² Java: ΠΊΠ°ΠΊΠΎΠΉ язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ?


Π˜Π·ΡƒΡ‡Π°ΠΉ Π½ΠΎΠ²Ρ‹ΠΉ курс C# 8.0 Π‘Ρ‚Π°Ρ€Ρ‚ΠΎΠ²Ρ‹ΠΉ бСсплатно! Акция Π΄ΠΎΒ 29 апрСля

Β 

C# vs Java – ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· ΠΎΠ±Ρ‰Π΅Ρ†Π΅Π»Π΅Π²Ρ‹Ρ…, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… языков программирования Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ Π²Π°ΠΌ для Ρ€Π°Π±ΠΎΡ‚Ρ‹? Они ΠΎΠ±Π° ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ±ΡˆΠΈΡ€Π½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для создания ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для ПК, Π²Π΅Π±, ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройств ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ. Π£ ΠΎΠ±ΠΎΠΈΡ… Π΅ΡΡ‚ΡŒ большиС сообщСства восторТСнных ΠΏΠΎΠΊΠ»ΠΎΠ½Π½ΠΈΠΊΠΎΠ² ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ½Π»Π°ΠΉΠ½-ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ.

ИмСя Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Ρ‰Π΅Π³ΠΎ, Π²Ρ‹Π±ΠΎΡ€ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ языка Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ½ΠΊΠΎΠ³ΠΎ, Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°. Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ рассмотрим сходства ΠΈ различия ΠΌΠ΅ΠΆΠ΄Ρƒ C# ΠΈ Java.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ C#?Β Β 

C# – это язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ появился Π² 2000 Π³ΠΎΠ΄Ρƒ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Ρ‹ Microsoft .NET. Он Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ для ΠΎΠ±Ρ‰Π΅ΠΉ языковой инфраструктуры (CLI) – ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ спСцификации, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ Microsoft ΠΈ стандартизированной ISO ΠΈ ECMA. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ C# скомпилированы Π² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ CLI. Β Β 

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ JAVA?Β Β 

Java, ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ Sun Microsystems Π² 1995 Π³ΠΎΠ΄Ρƒ, являСтся языком программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ†Π΅Π»ΡŒΡŽ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ β€œwrite once, run anywhere”, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π΅Π΄ΠΈΠ½ΠΎΠΆΠ΄Ρ‹ ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π² любом мСстС. Java-прилоТСния скомпилированы Π² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Java (JVM). Подобно CLI, JVM ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΡ€Π΅ΠΎΠ΄ΠΎΠ»Π΅Ρ‚ΡŒ Ρ€Π°Π·Ρ€Ρ‹Π² ΠΌΠ΅ΠΆΠ΄Ρƒ исходным ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ 1 ΠΈ 0, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€.

C# VS. JAVA: ΠžΠ‘ΠΠžΠ’ΠΠ«Π• Π‘Π₯ΠžΠ”Π‘Π’Π’Π

ПоявлСниС ΠΊΠ°ΠΊ Java, Ρ‚Π°ΠΊ ΠΈ C#, тСсно связано с ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠΌ ΠΎΡ‚ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Ρ… языков программирования, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ языки программирования C++, ΠΊ языкам Π±ΠΎΠ»Π΅Π΅ высокого уровня, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄. Π‘Π°ΠΉΡ‚-ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машинС. Π‘ этим связан ряд прСимущСств, Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ написания ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ понятСн Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΡƒ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° любой Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ установлСна Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина. Если ΠΎΡ‚Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ синтаксичСскиС ΠΏΡ€ΠΈΡ‡ΡƒΠ΄Ρ‹ Π² сторону, Ρ‚ΠΎ Π½Π΅ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ эти Π΄Π²Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ собой языка Ρ‚Π°ΠΊ популярны для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’ΠΎΡ‚ нСсколько основных сходств ΠΌΠ΅ΠΆΠ΄Ρƒ C# ΠΈ Java:

  • Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Ρ‚ΠΈΠΏΠΎΠ². Ошибка Ρ‚ΠΈΠΏΠ° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ назначаСтся Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ, создавая Π½Π΅ΠΏΡ€Π΅Π΄Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½Ρ‹Π΅ ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹Π΅ эффСкты. И C#, ΠΈ Java Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ выявлСниС Ρ‚Π°ΠΊΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² Π½Π΅Π·Π°ΠΊΠΎΠ½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠΉ Π²ΠΎ врСмя компиляции. Если ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΎ ΠΊ Π½ΠΎΠ²ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ, Ρ‚ΠΎΠ³Π΄Π° Π²ΠΎ врСмя выполнСния Ρ‚Π°ΠΊΠΈΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹.
  • Π‘Π±ΠΎΡ€ΠΊΠ° мусора: На языках Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΡ‚ΠΎΠΌΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, вСдь Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ рСсурсы. На Π‘# ΠΈ Java Π΅ΡΡ‚ΡŒ встроСнная сборка мусора, которая ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΡƒΡ‚Π΅Ρ‡ΠΊΡƒ памяти ΠΏΡƒΡ‚Π΅ΠΌ удалСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ большС Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π£Ρ‚Π΅Ρ‡ΠΊΠΈ памяти всС Π΅Ρ‰Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ, Π½ΠΎ благодаря основам управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ —  это ΡƒΠΆΠ΅ Π½Π΅ ваша ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°.
  • ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠ΅ наслСдованиС. Оба языка ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠ΅ наслСдованиС – это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ сущСствуСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΡƒΡ‚ΡŒ ΠΈΠ· любого Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса Π² любой ΠΈΠ· Π΅Π³ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Ρ… классов. Π­Ρ‚ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Π½Π΅ΠΏΡ€Π΅Π΄Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½Ρ‹Π΅ ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹Π΅ эффСкты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡƒΡ‚Π΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ нСсколькими Π±Π°Π·ΠΎΠ²Ρ‹ΠΌΠΈ классами ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌΠΈ классами. Diamond pattern – ΠΊΠ½ΠΈΠΆΠ½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹.
  • Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ прСдставляСт собой абстрактный класс, Π³Π΄Π΅ всС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ абстрактны. Абстрактным ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ являСтся Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ объявлСн, Π½ΠΎ Π½Π΅ содСрТит подробностСй Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Код, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ Π»ΡŽΠ±Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΠ»ΠΈ свойства, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ интСрфСйсом, Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒΡΡ классом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ двусмыслСнности ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Π° diamond, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ всСгда ясно, ΠΊΠ°ΠΊΠΎΠΉ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ класс Π²ΠΎ врСмя выполнСния. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ являСтся чистая иСрархия Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… классов ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠ³ΠΎ наслСдования Π² сочСтании с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ мноТСствСнного наслСдования. ЀактичСски использованиС абстрактных классов являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· способов мноТСствСнного наслСдования языков, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅ΠΎΠ΄ΠΎΠ»Π΅Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Π° diamond.

C# VS. JAVA: ΠžΠ‘ΠΠžΠ’ΠΠ«Π• Π ΠΠ—Π›Π˜Π§Π˜Π―

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ C# Π±Π΅Ρ€Π΅Ρ‚ своС Π½Π°Ρ‡Π°Π»ΠΎ Π² ΠΆΠ΅Π»Π°Π½ΠΈΠΈ Microsoft ΠΈΠΌΠ΅Ρ‚ΡŒ собствСнный Β«Java-ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉΒ» язык для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ .NET. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ C# Π½Π΅ создавался Π² Π²Π°ΠΊΡƒΡƒΠΌΠ΅, Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±Ρ‹Π»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΈ настроСны для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Microsoft, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΡ‹Ρ‚Π°Π»ΠΈΡΡŒ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свою ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ Π½Π° Visual J++. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя сообщСство Java с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π»ΠΎ расти ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ этими двумя языками Ρ€Π°Π·Π²ΠΈΠ²Π°Π»Π°ΡΡŒ Π³ΠΎΠ½ΠΊΠ° тСхничСских Π²ΠΎΠΎΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ. Π’ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· основных Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ C# ΠΈ Java.

Π’ΠΈΠ΄Π΅ΠΎ курсы ΠΏΠΎ схоТСй Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅:

Java Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ

Π•Π²Π³Π΅Π½ΠΈΠΉ Π’ΠΈΡ…ΠΎΠ½ΠΎΠ²

C# Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ (ООП)

АлСксандр Π¨Π΅Π²Ρ‡ΡƒΠΊ

Π§Ρ‚ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π² C# 6.0-7.0

АлСксандр Π’ΠΊΠ°Π»Π΅Π½ΠΊΠΎ

  • Windows vs open-source. Π₯отя ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ, C# Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ Microsoft – .NET Framework CLR ΠΈ являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ CLI. На Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊΠΎΠ½Ρ†Π΅ спСктра Java ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΡƒΡŽ экосистСму с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ Ρƒ Π½Π΅Π³ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Π»ΠΎΡΡŒ Π²Ρ‚ΠΎΡ€ΠΎΠ΅ Π΄Ρ‹Ρ…Π°Π½ΠΈΠ΅ отчасти благодаря Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Google ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ JVM для Android.
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈΠΉ (Generics): Generics ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Ρ‚ΠΈΠΏΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ компилятора, Π² основном удаляя привСдСния ΠΈΠ· исходного ΠΊΠΎΠ΄Π°. Π’ Java срСдства ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈΠΉ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ с использованиСм стираний. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΎΠ±Ρ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ° Β«ΡΡ‚ΠΈΡ€Π°ΡŽΡ‚ΡΡΒ», Π° ΠΏΡ€ΠΈ компиляции Π² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ привСдСния. C# Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ обобщСния, интСгрируя Π΅Π³ΠΎ Π² CLI ΠΈ прСдоставляя ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΈΠΏΠ΅ Π²ΠΎ врСмя выполнСния, Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ нСбольшоС ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π΄Π΅Π»Π΅Π³Π°Ρ‚ΠΎΠ² (ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ): Π’ C# Π΅ΡΡ‚ΡŒ Π΄Π΅Π»Π΅Π³Π°Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎ сущСству слуТат Π² качСствС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Ρ‹ Π±Π΅Π· знания Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Для достиТСния Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² Java Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ интСрфСйс с ΠΎΠ΄Π½ΠΈΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ способом ΠΎΠ±Ρ…ΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ количСства Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π² зависимости ΠΎΡ‚ прилоТСния.
  • ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌΡ‹Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ: Java Ρ€Π°Π·Π»ΠΈΡ‡Π°Π΅Ρ‚ Π΄Π²Π° Ρ‚ΠΈΠΏΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ – провСряСмыС ΠΈ нСпровСряСмыС. C# Π²Ρ‹Π±Ρ€Π°Π» Π±ΠΎΠ»Π΅Π΅ минималистский ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, имСя Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ‚ΠΈΠΏ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Π₯отя ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ Π»ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Π°, ΠΎΠ½Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π»ΠΈΡΡ‚ΡŒ Π½Π° ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий.
  • ΠŸΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ: C# ΠΈ Java ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ ΠΊ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌΡƒ. Java допускаСт ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, C# ΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово Β«virtualΒ» Π² Π±Π°Π·ΠΎΠ²ΠΎΠΌ классС ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово Β«overrideΒ» Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠΌ классС.
  • ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ (Enums): Π² C# пСрСчислСния ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой простыС списки ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Ρ… констант, Π³Π΄Π΅ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΌ. Java прСдставляСт пСрСчислСния Π±ΠΎΠ»Π΅Π΅ Π³Π»ΡƒΠ±ΠΎΠΊΠΎ, рассматривая Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ экзСмпляр Ρ‚ΠΈΠΏΠ°, Ρ‡Ρ‚ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ повСдСния ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ пСрСчислСниям.

Когда стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ C# ΠΈΠ»ΠΈ Java?

Π―Π·Ρ‹ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΈΡ‚ΠΎΠ³Π΅ Ρ€Π΅ΡˆΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ для своСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. БСгодня C# ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² основном для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ CLI Π½Π° .NET Framework, Mono ΠΈ Portable.NET. Если вашС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС ΠΈΠ»ΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ для Windows, C# Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΠ΅ всСго с Π½Π°Π±ΠΎΡ€ΠΎΠΌ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ .NET.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ для Unix, Linux ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Microsoft, экосистСма с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ – Java – Π»ΡƒΡ‡ΡˆΠΈΠΉ Π²Ρ‹Π±ΠΎΡ€. БообщСство постоянно создаСт Π½ΠΎΠ²Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ инструмСнты. Появились Π½ΠΎΠ²Ρ‹Π΅ ΠΌΠΎΡ‰Π½Ρ‹Π΅ языки, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Scala, Clojure ΠΈ Groovy, ΠΈ ΠΎΠ½ΠΈ всС Ρ‚ΠΎΠΆΠ΅ основаны Π½Π° JVM. К Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ это Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ, Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ JVM ΡΠ²Π»ΡΡŽΡ‚ΡΡ общСдоступными ΠΈ бСсплатными. Java – основной язык Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Google для Android – самой большой мобильной ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Π² ΠΌΠΈΡ€Π΅ Π² настоящСС врСмя.

БСсплатныС Π²Π΅Π±ΠΈΠ½Π°Ρ€Ρ‹ ΠΏΠΎ схоТСй Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅:

Π‘# — с Ρ‡Π΅Π³ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈ ΠΊΠ°ΠΊ ΠΈΠ΄Ρ‚ΠΈ дальшС? — Π²ΠΈΠ΄Π΅ΠΎΡƒΡ€ΠΎΠΊΠΈ ITVDN 2015

АлСксандр ΠŸΠΎΠ½ΠΎΠΌΠ°Ρ€Π΅Π½ΠΊΠΎ

ПишСм ΠΈΠ³Ρ€Ρƒ β€œDendy Tanks” Π½Π° Java с нуля.

Π‘ΠΎΠ½Π΄Π°Ρ€Π΅Π½ΠΊΠΎ АндрСй

Как ΡΡ‚Π°Ρ‚ΡŒ C# /.NET Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ

Ярослав ΠšΡƒΡ‡ΡƒΠΊ

Π˜ΠΌΠ΅ΠΉΡ‚Π΅ Π² Π²ΠΈΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ пСрСчислСнныС Π²Ρ‹ΡˆΠ΅ прСимущСства Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹, ΠΈ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· языков Π½Π΅ исчСзнСт Π² блиТайшСС врСмя. Оба языка ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ достаточно Π΄ΠΎΠ»Π³ΠΎ ΠΈ, Π½Π° самом Π΄Π΅Π»Π΅, Π²Ρ‹ Π½Π΅ смоТСтС Π½ΠΈΡ‡Π΅Π³ΠΎ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ языкС, Ρ‡Π΅Π³ΠΎ Π±Ρ‹ Β Π½Π΅ смогли ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ.

Π˜Ρ‚ΠΎΠ³: Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ:Β https://www.upwork.com/hiring/development/c-vs-java/

Java ΠΈΠ»ΠΈ C++ — Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ

Богласно индСксу Tiobe , Java ΠΈ C ++ входят Π² пятёрку самых популярных языков программирования Π² ΠΌΠΈΡ€Π΅. ЕстСствСнно, ΠΎΠ±Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° каТутся ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°ΠΌΠΈ для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ? Π’ этом сравнСнии Java ΠΈ C ++ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΠ±ΡΡƒΠΆΠ΄Π°Ρ‚ΡŒ различия ΠΈ сходства ΠΌΠ΅ΠΆΠ΄Ρƒ этими языками.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

  1. Π‘Β Ρ‡Π΅Π³ΠΎ Π½Π°Ρ‡Π°Π»ΠΎΡΡŒ: ΠΏΠ΅Ρ€Π²Ρ‹Π΅ шаги
  2. Java ΠΈΠ»ΠΈ C ++: Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ‰Π΅Π³ΠΎ
  3. ΠžΡ‚Π»ΠΈΡ‡ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСльзя ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ
  4. ПослСднСС слово за практичСским использованиСм
  5. Java ΠΈΠ»ΠΈ C ++: Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚Π΅

Π‘Β Ρ‡Π΅Π³ΠΎ Π½Π°Ρ‡Π°Π»ΠΎΡΡŒ: ΠΏΠ΅Ρ€Π²Ρ‹Π΅ шаги

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ языками программирования связано с их разными цСлями. Бравнивая истории происхоТдСния Java ΠΈΒ C ++, ΠΌΡ‹Β ΡƒΠ²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ их создатСли Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ прСслСдовали Ρ€Π°Π·Π½Ρ‹Π΅ Ρ†Π΅Π»ΠΈ.

Π’Β 1979Β Π³ΠΎΠ΄Ρƒ, работая с языком Simula, Π‘ΡŒΡΡ€Π½ Бтрауструп Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ», Ρ‡Ρ‚ΠΎ Π΅Π³ΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования оказались ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. ΠŸΡ€ΠΎΡ‰Π΅ говоря, это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ систСма рассматриваСт ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, а нС фокусируСтся Π½Π°Β ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°Ρ…. Однако Simula Π½Π΅Β ΡΠΏΡ€Π°Π²Π»ΡΠ»Π°ΡΡŒ ΡΒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ, и Бтрауструп Ρ€Π΅ΡˆΠΈΠ» Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½ΠΎΠ²Ρ‹ΠΌ языком. Он взял быстрый ΠΈΒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ язык C, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΠ» Π΅Π³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΒ Π½Π°Π·Π²Π°Π» своё Ρ‚Π²ΠΎΡ€Π΅Π½ΠΈΠ΅ C с классами. Команда ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»Π° Π΅Π³ΠΎ Π½Π°Β C ++ Π²Β 1983Β Π³ΠΎΠ΄Ρƒ, Π³Π΄Π΅ ++ прСдставляСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ приращСния. Бамая послСдняя вСрсия — C ++ 17, прСдставлСнная Π²Β 2017Β Π³ΠΎΠ΄Ρƒ.

ΠšΒ Π½Π°Ρ‡Π°Π»Ρƒ 1990-Ρ… Π³ΠΎΠ΄ΠΎΠ² C ++ Π±Ρ‹Π» Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ популярСн срСди программистов. ΠΠ΅ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ: это Π±Ρ‹Π»ΠΎ быстро, эффСктивно ΠΈΒ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎ. Однако Π±Ρ‹Π»Π° ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°: ΠΊΠ°ΠΊ и в случаС с C, C ++ нС зависСл ΠΎΡ‚Β ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π»ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, написанная Π½Π°Β ΠΎΠ΄Π½ΠΎΠΌ устройствС, Π½Π΅Β Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Β Π΄Ρ€ΡƒΠ³ΠΎΠΌ, ΠΈΒ Ρ‚ΠΎΒ ΠΆΠ΅ самоС касаСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. ΠŸΠΎΒ ΠΌΠ΅Ρ€Π΅ роста количСства элСктронных устройств это ΡΡ‚Π°Π½ΠΎΠ²ΠΈΠ»ΠΎΡΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС большС нС сущСствовало Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ². ΠœΡƒΠ·Ρ‹ΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ»Π΅Π΅Ρ€Ρ‹, ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Ρ‹, ΠΏΡƒΠ»ΡŒΡ‚Ρ‹ дистанционного управлСния и мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… Π²Π΅Ρ‰Π΅ΠΉ Ρ‚ΠΎΠΆΠ΅ в этом Π½ΡƒΠΆΠ΄Π°Π»ΠΈΡΡŒ.

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² 1991 Π³ΠΎΠ΄Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄Π° Sun Microsystems Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ Java (Ρ‚ΠΎΠ³Π΄Π° ΠΎΠ½Π° Π½Π°Π·Ρ‹Π²Π°Π»Π°ΡΡŒ Oak). Π•Π³ΠΎ основным ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠΌ Π±Ρ‹Π»ΠΎ WORA β€” пиши ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, запускай Π³Π΄Π΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎ. Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π»ΠΎ Π΅Π³ΠΎ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ для встраиваСмых систСм. Π‘ΠΎΠ·Π΄Π°Ρ‚Π΅Π»ΠΈ взяли ΡƒΠΆΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ извСстный синтаксис C-стиля ΠΈ основали Π½Π° Π½Ρ‘ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ язык. Как ΠΈ C ++, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΈ Π±Ρ‹ΡΡ‚Ρ€ΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ, Π½ΠΎ Π»Π΅Π³ΠΊΠΎ пСрСносимым ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎ-Π½Π΅ΠΉΡ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Π΄Ρ‘ΠΆΠ½ΠΎΡΡ‚ΡŒ. ΠšΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ довольно быстро стал популярным, ΠΈ основныС Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π»ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π°ΠΏΠΏΠ»Π΅Ρ‚ΠΎΠ² Java. На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ новСйшая вСрсия β€” Java SE 13.

Java ΠΈΠ»ΠΈ C ++: Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ‰Π΅Π³ΠΎ

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π° Java сильно повлиял C ++, Π²ΠΏΠΎΠ»Π½Π΅ СстСствСнно, Ρ‡Ρ‚ΠΎ эти языки ΠΈΠΌΠ΅ΡŽΡ‚ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Ρ‰Π΅Π³ΠΎ. ΠŸΡ€ΠΈΡ‡Ρ‘ΠΌ синтаксис являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ. Оба ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ основаны Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈ Ρ‚ΠΎΠΌ ΠΆΠ΅ языкС C, ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Java Π²Ρ‹Π±Ρ€Π°Π»Π° это ΡΠΎΠ·Π½Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. Π§Ρ‚ΠΎΠ±Ρ‹ синтаксис Π½ΠΎΠ²ΠΎΠ³ΠΎ языка казался Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² Ρ‚ΠΎ врСмя Π² основном Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ с C ++. Π’Ρ‹ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова Π½Π° самом Π΄Π΅Π»Π΅ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ (общСдоступныС, частныС, статичСскиС, break, continue, char ΠΈ Ρ‚.Π΄.), Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² (арифмСтичСскиС ΠΈ рСляционныС).

И Java, ΠΈΒ C ++ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹. Π•ΡΡ‚ΡŒ нСбольшиС нСсоотвСтствия (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠ΄ΠΈΠ½ ΠΈΒ Ρ‚ΠΎΡ‚Β ΠΆΠ΅ Ρ‚ΠΈΠΏ называСтся boolean Π²Β Java ΠΈΒ bool Π²Β C ++), но это всё. Π”Π°ΠΆΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ написаны ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΒ β€” Π²Ρ‹Β Π»ΠΈΠ±ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚Π΅ с двух косых Ρ‡Π΅Ρ€Ρ‚ (//), Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΎΠ΄Π½Ρƒ ΠΊΠΎΡΡƒΡŽ Ρ‡Π΅Ρ€Ρ‚Ρƒ со звёздочкой (Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с / * ΠΈΒ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ * /).

Когда мы сравниваСм Java ΠΈΒ C ++, Π½Π΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ Π²Β Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ: ΠΎΠ±Π° ΠΎΠ½ΠΈ статичСски Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹. ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π°Β ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… языках Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ явно ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ имя ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ привязку Π΅Ρ‘Β ΠΊΒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ Π΄Π°Π½Π½Ρ‹Ρ…. Π’Β ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ от языка с динамичСской Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ, Ссли в качСствС значСния присваиваСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, систСма Π²Ρ‹Π΄Π°Ρ‘Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ°. Они ΠΎΠ±Π° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ компилятор, Π°Β Π½Π΅Β ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ исходный ΠΊΠΎΠ΄, написанный Π²Π°ΠΌΠΈ Π½Π°Β Java ΠΈΠ»ΠΈ C ++, Π²Β ΠΌΠ°ΡˆΠΈΠ½ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹Π΅ инструкции. Π—Π°Ρ‚Π΅ΠΌ машина ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡ…Β Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ.

Π₯отя C ++ Π±Ρ‹Π» Π»ΠΈΠ΄Π΅Ρ€ΠΎΠΌ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования, Π΅Π³ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΊΠ°ΠΊ Java, Ρ‚Π°ΠΊ ΠΈΒ C ++. Однако Π΅ΡΡ‚ΡŒ ΠΎΠ΄Π½ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹Β Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ обсуТдСнии Java ΠΈΒ C ++. Π₯отя он нСчасто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, C ++ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ то прСимущСство, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Π­Ρ‚Π° модСль программирования основана Π½Π°Β Π²Ρ‹Π·ΠΎΠ²Π°Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€. БистСма структурируСт ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Β Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΆΠ΅ извСстныС ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹. Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ C ++ языком программирования с нСсколькими ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ°ΠΌΠΈ.

ΠžΡ‚Π»ΠΈΡ‡ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСльзя ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ

Π’Ρ‹Β ΡƒΠΆΠ΅ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ основноС Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ C ++ ΠΈΒ Java Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π²Β Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Java нС зависит ΠΎΡ‚Β ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Π°Β C ++ β€” Π½Π΅Ρ‚. Π’Β Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ к этому, для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ языка Π΅ΡΡ‚ΡŒ мноТСство Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΡ…, Π½ΠΎΒ Π²Π°ΠΆΠ½Ρ‹Ρ… ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ².

Бравнивая синтаксис Java ΠΈΒ C ++, вы скоро Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послСдний ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ. ΠŸΡ€ΠΎΡ‰Π΅ говоря, ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΒ β€” это Ρ‚ΠΈΠΏ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, которая содСрТит адрСс Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ в качСствС своСго значСния. Π˜Ρ…Β ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, но с ними Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ остороТно: Π½Π΅Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ этого ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊΒ ΡƒΡ‚Π΅Ρ‡ΠΊΠ΅ памяти. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ C ++ ΠΈΠ½ΠΎΠ³Π΄Π° нС справляСтся с точки зрСния бСзопасности, Π°Β JavaΒ β€” Π½Π΅Ρ‚.

Π’Β ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚Β C ++, Java ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΠΎΡ‚ΠΎΠΊΠΈ. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ сСбС ΠΏΠΎΡ‚ΠΎΠΊ процСсса, Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Π»Ρ‘Π³ΠΊΠΈΠΉ, Ρ‡Ρ‚ΠΎ систСма ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ нСсколько ΠΈΠ·Β Π½ΠΈΡ… ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ. Π’Β Ρ‚Π°ΠΊΠΎΠΌ случаС Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠΌΡƒ процСссору (ЦП) трСбуСтся мСньшС Ρ†ΠΈΠΊΠ»ΠΎΠ², и систСма Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ эффСктивно. Команда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Java Π½Π°Π·Π²Π°Π»Π° этот процСсс ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹ΠΌ, Π°Β Π²Β C ++ Ρ‚Π°ΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π½Π΅Ρ‚. Однако Java позволяСт классу ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚Β ΠΎΠ΄Π½ΠΎΠ³ΠΎ родитСля, Π°Β C ++ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ мноТСствСнноС наслСдованиС.

Π•Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎ Π²Π°ΠΆΠ½ΠΎΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ C ++ ΠΈΒ JavaΒ β€” это способ управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. Π’Β C ++ вы выдСляСтС и освобоТдаСтС ΠΏΠ°ΠΌΡΡ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡΒ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π’Β Java Π΅ΡΡ‚ΡŒ функция сборки мусора, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ систСма позаботится об этом автоматичСски. Однако, сравнивая Java ΠΈΒ C ++ по этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ способ Π»ΡƒΡ‡ΡˆΠ΅. Π₯отя автоматичСский всСгда ΠΏΡ€ΠΎΡ‰Π΅, Π±Ρ‹Π²Π°ΡŽΡ‚ случаи, ΠΊΠΎΠ³Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Π΅ΡΡ‚ΡŒ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ в своих Ρ€ΡƒΠΊΠ°Ρ…Β β€” ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ об этом ΠΏΠΎΠ·ΠΆΠ΅.

ПослСднСС слово за практичСским использованиСм

Β 

Для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ Π²Ρ‹Π±ΠΎΡ€Π° ΠΎΠ΄Π½ΠΎΠ³ΠΎ языка программирования Π½Π°Π΄ Π΄Ρ€ΡƒΠ³ΠΈΠΌ являСтся ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π΅Π³ΠΎ использования. И Java, ΠΈ C ++ ΡΠ²Π»ΡΡŽΡ‚ΡΡ языками ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния. Но Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ‡Π°Ρ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ C ++ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚Π°Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½Π° систСмном ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Как Π²Ρ‹ ΡƒΠΆΠ΅ Π·Π½Π°Π΅Ρ‚Π΅, Java Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ нСбольшоС прСимущСство ΠΈΠ·-Π·Π° ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ° WORA. ΠŸΠ΅Ρ€Π΅Π½ΠΎΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° Π΄Π°Ρ‘Ρ‚ большС возмоТностСй для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Бпустя ΠΏΠΎΡ‡Ρ‚ΠΈ Ρ‚Ρ€ΠΈ дСсятилСтия послС своСго создания Java ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ остаётся основным языком для встроСнных систСм. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ ΠΈΡ… Π²Π΅Π·Π΄Π΅, ΠΎΡ‚ ΠΊΡ€ΠΎΡˆΠ΅Ρ‡Π½Ρ‹Ρ… SIM-ΠΊΠ°Ρ€Ρ‚ Π² Π½Π°ΡˆΠΈΡ… ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°Ρ… Π΄ΠΎ соврСмСнных систСм ΡƒΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ°. Однако это Π½Π΅ СдинствСнная сфСра, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ. Java Ρ‚Π°ΠΊΠΆΠ΅ являСтся Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π·ΡƒΠΌΠ½Ρ‹ΠΌ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π²ΠΎ всём ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии Android, ΠΈ ΠΊ ΠΊΠΎΠ½Ρ†Ρƒ 2020 Π³ΠΎΠ΄Π° Android ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π΄ΠΎΠΌΠΈΠ½ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅ с Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ 85% смартфонов Π²ΠΎ всём ΠΌΠΈΡ€Π΅. Java Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΈ Π²Π΅Π±- ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Благодаря Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ достаточно ΠΌΠΎΡ‰Π½Ρ‹ΠΉ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΡ‘ΠΌΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. Он являСтся популярным Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ Π² сСкторах элСктронной ΠΊΠΎΠΌΠΌΠ΅Ρ€Ρ†ΠΈΠΈ, финансов ΠΈ Π½Π°ΡƒΠΊΠΈ.

Π’Ρ‹Β Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ C ++ для Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ…, ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΈΒ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π Π°Π·Π½ΠΈΡ†Π° Π²Β Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ C ++ часто считаСтся Π±ΠΎΠ»Π΅Π΅ подходящим для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ с оборудованиСм, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ он позволяСт Π»ΡƒΡ‡ΡˆΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ рСсурсы. ΠšΒ Ρ‚Π°ΠΊΠΈΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌ относятся Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹, систСмы управлСния Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, компиляторы ΠΈΒ Π΄Π°ΠΆΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы.

Π•Ρ‰Ρ‘ ΠΎΠ΄Π½Π° сильная сторона C ++ β€” Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ³Ρ€. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π΄Π²ΠΈΠΆΠΊΠ΅ Unreal Engine , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ носит ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΈΡ‚ΡƒΠ» Β» Π‘Π°ΠΌΡ‹ΠΉ ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹ΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ для Π²ΠΈΠ΄Π΅ΠΎΠΈΠ³Ρ€ с 2014 Π³ΠΎΠ΄Π°Β». Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠ΄Π° Π½Π° C ++ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ всС. ΠžΡ‚ простых Π³ΠΎΠ½ΠΎΡ‡Π½Ρ‹Ρ… ΠΈΠ³Ρ€ Π΄ΠΎ слоТных ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… MMORPG. ВСхничСски Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΠ³Ρ€Ρ‹ ΠΈ Π½Π° Java β€” Minecraft β€” ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ Ρ‚ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Однако, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ сравниваСм Java ΠΈ C ++, послСдний ΠΈΠΌΠ΅Π΅Ρ‚ прСимущСство, Ρ‡Ρ‚ΠΎ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ сборки мусора.

Java ΠΈΠ»ΠΈ C ++: Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚Π΅

Π’ Π±ΠΈΡ‚Π²Π΅ Java ΠΏΡ€ΠΎΡ‚ΠΈΠ² C ++ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ³ΠΎ явного побСдитСля. Всё зависит ΠΎΡ‚ потрСбностСй ΠΈ Ρ†Π΅Π»Π΅ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. Однако ΠΌΡ‹ надССмся, Ρ‡Ρ‚ΠΎ нашС ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ сравнСниС ΠΏΠΎΠΌΠΎΠ³Π»ΠΎ Π²Π°ΠΌ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ для вас.

Java ΠΈ C: сравнСниС ΠΈ сопоставлСниС

C β€” ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ, Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΉ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ язык. Java β€” это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ язык высокого уровня. Java ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Π° C ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Java Π»Π΅Π³Ρ‡Π΅ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° высокого уровня, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ C ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ большС ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ быстрСС, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π±Π»ΠΈΠΆΠ΅ ΠΊ ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΠΌΡƒ ΠΊΠΎΠ΄Ρƒ.


На вопрос Β«ΠΊΠ°ΠΊΠΎΠΉ язык Π»ΡƒΡ‡ΡˆΠ΅?Β» Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚: «это зависит». ΠŸΠΎΠ½ΡΡ‚Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ Π²ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚Π΅ своС врСмя ΠΈ рСсурсы Π² ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ языка, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€Π΅ΡƒΡΠΏΠ΅Ρ‚ΡŒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈΠ· Π»ΡƒΡ‡ΡˆΠΈΡ… тСхничСских долТностСй.

НайдитС подходящий ΡƒΡ‡Π΅Π±Π½Ρ‹ΠΉ Π»Π°Π³Π΅Ρ€ΡŒ

  • Career Karma ΠΏΠΎΠ΄Π±Π΅Ρ€Π΅Ρ‚ для вас Π»ΡƒΡ‡ΡˆΠΈΠ΅ тСхнологичСскиС ΡƒΡ‡Π΅Π±Π½Ρ‹Π΅ курсы
  • Доступ ΠΊ ΡΠΊΡΠΊΠ»ΡŽΠ·ΠΈΠ²Π½Ρ‹ΠΌ стипСндиям ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ курсам

Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ свой интСрСс
Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡΠ”ΠΈΠ·Π°ΠΉΠ½ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ Π°Π½Π°Π»ΠΈΠ· данныхАналитика Π΄Π°Π½Π½Ρ‹Ρ…ΠŸΡ€ΠΎΠ΄Π°ΠΆΠΈUX-Π΄ΠΈΠ·Π°ΠΉΠ½ΠšΠΈΠ±Π΅Ρ€Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΠ¦ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΈΠ½Π³Π˜ΠΌΡ

Ѐамилия

ЭлСктронная ΠΏΠΎΡ‡Ρ‚Π°

НомСр Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ, Π²Ρ‹ ΡΠΎΠ³Π»Π°ΡˆΠ°Π΅Ρ‚Π΅ΡΡŒ с нашими Условиями обслуТивания ΠΈ ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΎΠ³Π»Π°ΡˆΠ°Π΅Ρ‚Π΅ΡΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ прСдлоТСния ΠΈ возмоТности ΠΎΡ‚ Career Karma ΠΏΠΎ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Ρƒ, тСкстовым сообщСниям ΠΈ элСктронной ΠΏΠΎΡ‡Ρ‚Π΅.

Выбирая ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ C, Π²Ρ‹ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя ΡΡ‚Π°Ρ€Π΅ΠΉΡˆΠΈΠΌΠΈ языками программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎ сих ΠΏΠΎΡ€ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π»ΡƒΡ‡ΡˆΠ΅ Π·Π°Π΄Π°Ρ‚ΡŒ вопрос: Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ C ΠΈ Ρ‡Ρ‚ΠΎ слСдуСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ?

Π”Π°Π²Π°ΠΉΡ‚Π΅ обсудим, ΠΏΠΎΡ‡Π΅ΠΌΡƒ история этих Π΄Π²ΡƒΡ… языков составляСт Π²Π°ΠΆΠ½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ истории ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠΈ Π² Ρ†Π΅Π»ΠΎΠΌ, различия ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ C ΠΈ ΠΊΠ°ΠΊΠΎΠΉ язык Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΊΠ°ΠΊΠΈΡ… ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²Π°Ρ….

C: Начало

C Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Π² 1972 Π³ΠΎΠ΄Ρƒ для использования с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой UNIX, которая Π² Ρ‚ΠΎ врСмя Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π»Π°ΡΡŒ Bell Labs. Π­Ρ‚ΠΎ Π±Ρ‹Π» Ρ€Π΅ΡˆΠ°ΡŽΡ‰ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π² истории ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… Π½Π°ΡƒΠΊ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ с Ρ‚Π΅Ρ… ΠΏΠΎΡ€ всС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы Π±Π΅Ρ€ΡƒΡ‚ своС Π½Π°Ρ‡Π°Π»ΠΎ Π² UNIX (которая сама Π±Ρ‹Π»Π° частично написана Π½Π° C). Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ C Π»ΠΈΠ±ΠΎ присутствуСт, Π»ΠΈΠ±ΠΎ ΠΎΠΊΠ°Π·Π°Π» влияниС ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π° ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ сСгодня.

C Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠΊΠ°Π·Π°Π» нСвСроятноС влияниС Π½Π° ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π° Π½ΠΈΠΌ языки, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Java. Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ C ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ сСгодня для написания сцСнариСв ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… скрытых Π·Π°Π΄Π°Ρ‡, отвСтвлСния языка, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ C++ ΠΈΠ»ΠΈ C#, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΡˆΠΈΡ€ΠΎΠΊΠΎΠΉ ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠΉ.

Java: Challenger

Java Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Sun Microsystems Π² ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ ΠΌΠ΅ΠΆΠ΄Ρƒ 1991 ΠΈ 1995 Π³ΠΎΠ΄Π°ΠΌΠΈ; ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ для встраивания Π² Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ Ρ‚Π΅Π»Π΅Π²ΠΈΠ·ΠΎΡ€Ρ‹. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊΡ€ΡƒΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ большом количСствС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ. По Π΄Π°Π½Π½Ρ‹ΠΌ Oracle, Π² настоящСС врСмя Java установлСна ​​на Ρ‚Ρ€Π΅Ρ… ΠΌΠΈΠ»Π»ΠΈΠ°Ρ€Π΄Π°Ρ… устройств. НаиболСС распространСнной ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Java ΡΠ²Π»ΡΡŽΡ‚ΡΡ устройства Android, всС ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΊΠΎΠ΄, написанный Π½Π° языкС Java.

Π›ΡŽΠ΄ΠΈ, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, часто Π·Π°Π΄Π°ΡŽΡ‚ вопрос: ΠΊΠ°ΠΊ Java связан с JavaScript? К ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, Π΅ΡΡ‚ΡŒ простой отвСт… совсСм Π½Π΅Ρ‚. Когда компания Netscape Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° JavaScript для сцСнариСв Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° (Ρ‚ΠΎΠ³Π΄Π° ΠΎΠ½ назывался LiveScript), ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Java росла. Π£Π²ΠΈΠ΄Π΅Π² Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΡŽ, Netscape Π΄ΠΎΠ±Π°Π²ΠΈΠ»Π° Π² Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Β«JavaΒ», Ρ‡Ρ‚ΠΎ Π½Π° Π΄ΠΎΠ»Π³ΠΈΠ΅ Π³ΠΎΠ΄Ρ‹ Π²Ρ‹Π·Π²Π°Π»ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρƒ. Π‘ΡƒΠ΄ΡŒΡ‚Π΅ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ JavaScript, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Java ΠΈΠ»ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚.

Java ΠΈ C: сравнСниС

Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΎΠ±Π° языка ΠΈ сравним ΠΈΡ… ΠΏΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ направлСниям.

Java ΠΏΡ€ΠΎΡ‚ΠΈΠ² C: ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΈΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠ³ΠΎ

Одно Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ этими двумя языками Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Java β€” это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования, Π° C β€” ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ язык. Π§Ρ‚ΠΎ это Π·Π½Π°Ρ‡ΠΈΡ‚ для вас ΠΊΠ°ΠΊ программиста? Вопрос Π² Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΡƒΡŽ ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ язык для модСлирования Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ.

Java Ρ€Π°Π·Π±ΠΈΠ²Π°Π΅Ρ‚ ΠΌΠΈΡ€ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹: всС модСлируСтся ΠΊΠ°ΠΊ Π²Π΅Ρ‰ΡŒ β€” ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ β€” с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ качСствами ΠΈ возмоТностями. ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ, Π° это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ постоянно ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π°Ρ‚ΡŒ вСлосипСд, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅. Π—Π°Ρ‚Π΅ΠΌ эти ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π² зависимости ΠΎΡ‚ ΠΈΡ… идСнтичности. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π·Π°ΠΏΠ°Ρ…Π°, Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ†Π²Π΅Ρ‚.

C, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, являСтся ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΌ языком, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‡Π΅Ρ€Π΅Π· Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ процСссы (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°ΠΌΠΈ ΠΈΠ»ΠΈ функциями) ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ свСрху ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎ Π²Π½ΠΈΠ·. Π₯отя ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ Π² Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΎΠ½ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ слСдуСт Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΡ‡Ρ‚ΠΈ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎΠ± этом ΠΊΠ°ΠΊ ΠΎ Книга Β«Π’Ρ‹Π±Π΅Ρ€ΠΈ своС ΠΏΡ€ΠΈΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅Β» , слСдуя указаниям Π² зависимости ΠΎΡ‚ Π΄Π°Π½Π½Ρ‹Ρ….

Ни ΠΎΠ΄ΠΈΠ½ ΠΈΠ· способов Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π΅ Π»ΡƒΡ‡ΡˆΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ. Π‘ΠΊΠΎΡ€Π΅Π΅, это вопрос Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ смысл для ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Ρ€Π΅ΡˆΠ°Π΅Ρ‚Π΅, ΠΈ (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎ) Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ большС смысла для вас, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ.

C ΠΏΡ€ΠΎΡ‚ΠΈΠ² Java: Π½ΠΈΠ·ΠΊΠΈΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΏΡ€ΠΎΡ‚ΠΈΠ² высокого уровня

C β€” это язык Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ вашС взаимодСйствиС с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ ΠΏΡ€ΠΈ написании Π½Π° C Π±Π»ΠΈΠΆΠ΅ ΠΊ ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΠΌΡƒ ΠΊΠΎΠ΄Ρƒ (Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ ΠΈ Π½ΡƒΠ»ΠΈ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ находится Π½Π° самом Π½ΠΈΠ·ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹. Он ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ синтаксис, Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΉ Π²Π°ΠΌ ΠΏΠΎ английскому языку, Π½ΠΎ Π² Π½Π΅ΠΌ мСньшС абстракции ΠΈ удалСнности ΠΎΡ‚ машинного ΠΊΠΎΠ΄Π°.

Java β€” это язык высокого уровня: Π΅Π³ΠΎ синтаксис Π±ΠΎΠ»Π΅Π΅ ΠΎΡ‚Π΄Π°Π»Π΅Π½ ΠΈΠ»ΠΈ абстрагирован ΠΎΡ‚ ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… инструкций; это Π±Π»ΠΈΠΆΠ΅ ΠΊ чСловСчСскому языку. Из-Π·Π° этого Java ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π»Π΅Π³Ρ‡Π΅ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

Если ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ языки программирования с чСловСчСскими языками, язык программирования высокого уровня Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ испанскому языку ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с английским. Π‘Π΅Π· обучСния ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Ρ‚Ρ€ΡƒΠ΄Π½Ρ‹ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… слов, Π½ΠΎ испанский всС Π΅Ρ‰Π΅ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ для носитСля английского языка. Π―Π·Ρ‹ΠΊΠΈ программирования Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня дальшС ΠΎΡ‚ нашСго СстСствСнного языка ΠΈ Π±Π»ΠΈΠΆΠ΅ ΠΊ ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΠΌΡƒ ΠΊΠΎΠ΄Ρƒ, Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ китайский Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ дальшС ΠΎΡ‚ английского.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π±Π»ΠΈΠΆΠ΅ ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΠΌΡƒ ΠΊΠΎΠ΄Ρƒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°, языки Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ слоТными для чтСния, Ρ‡Π΅ΠΌ языки Π±ΠΎΠ»Π΅Π΅ высокого уровня, Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ эффСктивными, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ Π±ΠΎΠ»Π΅Π΅ тСсно Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ с ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ.

Π”Ρ€ΡƒΠ³ΠΎΠΉ способ Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° это Ρ‚Π°ΠΊ: язык Π±ΠΎΠ»Π΅Π΅ высокого уровня ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌ, Π½ΠΎ Π·Π° счСт сокрытия ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² ΠΈ дСйствий, происходящих ΠΏΠΎΠ΄ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒΡŽ. НизкоуровнСвый язык ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ многословным ΠΈ Ρ‚Ρ€ΡƒΠ΄Π½Ρ‹ΠΌ для понимания Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌ этапС, Π½ΠΎ Π²Ρ‹ освСдомлСны ΠΎΠ±ΠΎ всСх махинациях.

Java ΠΏΡ€ΠΎΡ‚ΠΈΠ² C: ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΈΠ² скомпилированного

Π•ΡΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ Ρ‡ΠΈΡ‚Π°ΡŽΡ‚ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡƒΡŽ Π²Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ: Java β€” это ΠΏΠΎΠ»ΡƒΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ язык β€” с использованиСм Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Java ( JVM) β€” Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ C являСтся ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ языком.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ это, взглянув Π½Π° Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ общаСмся с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ. Всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ β€” Π½Π΅Π²Π°ΠΆΠ½ΠΎ, Π½Π° ΠΊΠ°ΠΊΠΎΠΌ языкС, Π½Π° высоком ΠΈΠ»ΠΈ Π½ΠΈΠ·ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ β€” ΠΎΠ½Π° всСгда ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ интСрпрСтируСтся процСссором. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Ρƒ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ большС шагов ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π²Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΠ°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΡ…ΠΎΠΆΠ° Π½Π° Ρ‚ΠΎ, ΠΊΠ°ΠΊ Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒ языка ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ для вас тСкст, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π΅Π³ΠΎ Ρ‡ΠΈΡ‚Π°Π΅Ρ‚Π΅, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ скомпилированная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠ΄ΠΎΠ±Π½Π° Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ ΡƒΠΆΠ΅ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½ ΠΏΠΎΠ»Π½Ρ‹ΠΉ тСкст.

Π§Ρ‚ΠΎ это Π·Π½Π°Ρ‡ΠΈΡ‚ для вас ΠΊΠ°ΠΊ программиста? ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ языки ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π΅ΠΏΡƒΡ‚Π°Ρ†ΠΈΡŽ Π±ΠΎΠ»Π΅Π΅ быстрых ΠΈ эффСктивных, Ρ‡Π΅ΠΌ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ языки, ΠΈ Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. Как Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· названия, ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ скомпилированы β€” ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ собрана компилятором β€” ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΎΠ½ΠΈ смогут Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ шаг ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ вноситС измСнСния Π² свою ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ.

Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ языки ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ послС любого измСнСния Π±Π΅Π· этого Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ шага. ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, ΠΈ запуститС Π΅Π³ΠΎ. ΠšΠΎΠΌΠΏΡ€ΠΎΠΌΠΈΡΡ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ; хотя с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ‚Π°ΠΊΠΈΡ… случаСв становится всС мСньшС, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ языки становятся всС быстрСС ΠΈ быстрСС.

C ΠΏΡ€ΠΎΡ‚ΠΈΠ² Java: ΠŸΠ°ΠΌΡΡ‚ΡŒ

Одной ΠΈΠ· Π²Π°ΠΆΠ½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ программисты Π½Π° C Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, являСтся ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. ΠŸΡ€ΠΈ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π° C Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ Π²Ρ‹Π·ΠΎΠ²Ρ‹, ΠΊΠ°ΠΊ Β«mallocΒ» (Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ памяти) ΠΈ Β«freeΒ», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, какая ΠΏΠ°ΠΌΡΡ‚ΡŒ потрСбуСтся ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅. Java ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π½Π΅Ρ‡Ρ‚ΠΎ, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ сборщиком мусора, для удалСния Π»ΡŽΠ±Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ большС Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Java управляСт ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Π·Π° вас.

Π”ΡƒΠΌΠ°ΠΉΡ‚Π΅ ΠΎΠ± этом Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΎ Π²ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ мСханичСской ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ автоматичСской ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡. Если Π²Ρ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡ‚ΡŒΡΡ ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ ΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚Π΅ просто ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Π²ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ, Π²Π°ΠΌ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚. Но Ссли Π²Π°ΠΌ нравится ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ достигаСтся ΠΏΡ€ΠΈ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΏΠ»ΠΎΡ…ΡƒΡŽ ΠΏΠΎΠ³ΠΎΠ΄Ρƒ), Π²Ρ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚Π΅Ρ‚Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΊΠΎΡ€ΠΎΠ±ΠΊΡƒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡. Если это ваш ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ язык, Java ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ доступным Π² этом ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ.

Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Java ΠΏΡ€ΠΎΡ‚ΠΈΠ² C: Ρ‡Ρ‚ΠΎ быстрСС?

Если Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ ΠΎ скорости ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ C, Ρ‚ΠΎ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ яблоки с яблоками довольно слоТно.

Одна Π²Π΅Ρ‰ΡŒ, которая Π΄Π΅Π»Π°Π΅Ρ‚ C Π²ΠΏΠ΅Ρ€Π΅Π΄ΠΈ, Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ простой ΠΊΠΎΠ΄ с нСбольшими Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹ΠΌΠΈ расходами. Π­Ρ‚ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ это язык Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня, Π° это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π΅ΠΌΡƒ Π½Π΅ Π½ΡƒΠΆΠ΅Π½ Ρ‚ΠΎΡ‚ ΠΆΠ΅ синтаксичСский Π±Π°Π³Π°ΠΆ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ трСбуСтся языку Π±ΠΎΠ»Π΅Π΅ высокого уровня. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² C Π½Π΅Ρ‚ встроСнного сборщика мусора, Π·Π°ΠΌΠ΅Π΄Π»ΡΡŽΡ‰Π΅Π³ΠΎ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρƒ, Π° язык компилируСтся, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π΅Π³ΠΎ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° мСстС.

Java компилируСтся Π² Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΈΠΉ язык, Π° Π·Π°Ρ‚Π΅ΠΌ интСрпрСтируСтся. Π£ Π½Π΅Π³ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ автоматичСская сборка мусора, ΠΈ, Π²ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΎΠ½ дальшС ΠΎΡ‚ машинного ΠΊΠΎΠ΄Π°. Из-Π·Π° этого ΠΊΠΎΠ΄ C ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ быстрСС, Ρ‡Π΅ΠΌ Java, Π½ΠΎ Ρ€Π°Π·Π½ΠΈΡ†Π° зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ дСлаСтся ΠΈ насколько Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΊΠΎΠ΄ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½.

«ΠšΠ°Ρ€ΠΌΠ° ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Ρ‹ вошла Π² мою Тизнь, ΠΊΠΎΠ³Π΄Π° я большС всСго Π² Π½Π΅ΠΉ Π½ΡƒΠΆΠ΄Π°Π»Π°ΡΡŒ, ΠΈ быстро ΠΏΠΎΠΌΠΎΠ³Π»Π° ΠΌΠ½Π΅ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ Π½Π° Π±ΡƒΡ‚ΠΊΠ΅ΠΌΠΏ. Π§Π΅Ρ€Π΅Π· Π΄Π²Π° мСсяца послС выпуска я нашла Ρ€Π°Π±ΠΎΡ‚Ρƒ своСй ΠΌΠ΅Ρ‡Ρ‚Ρ‹, которая соотвСтствовала ΠΌΠΎΠΈΠΌ цСнностям ΠΈ цСлям Π² ΠΆΠΈΠ·Π½ΠΈ!»

Π’Π΅Π½Π΅Ρ€Π°, ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€-программист Rockbot

Π§Ρ‚ΠΎ слСдуСт ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ: Java ΠΈΠ»ΠΈ C?

Π˜Π·ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π‘ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π»Π°Ρ‚Ρ‹Π½ΠΈ: Ρƒ вас Π±ΡƒΠ΄Π΅Ρ‚ Π±Π°Π·Π° для мноТСства Π΄Ρ€ΡƒΠ³ΠΈΡ… языков программирования, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ ΠΈΡ… ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅. C ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² рядС контСкстов для написания сцСнариСв ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π·Π°Π΄Π°Ρ‡ Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π²Π΅Π»ΠΈΠΊΠΈ ΡˆΠ°Π½ΡΡ‹, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ с Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Angry Birds (Π½ΠΎ с большим Ρ‚Ρ€ΡƒΠ΄ΠΎΠΌ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ).

Java Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ доступным, учитывая, Ρ‡Ρ‚ΠΎ это язык Π±ΠΎΠ»Π΅Π΅ высокого уровня, Ρ‡Π΅ΠΌ C. ΠšΠΎΠΌΠΏΡ€ΠΎΠΌΠΈΡΡ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ½ΡΡ‚ΡŒ всС, Ρ‡Ρ‚ΠΎ происходит Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, Π·Π° счСт краткости ΠΈ скорости обучСния. Π₯отя, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π³Π»ΡƒΠ±ΠΆΠ΅ ΠΏΠΎΠ³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΡΡ Π² Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Java, срСдства Π΅ΡΡ‚ΡŒ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Java Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΡˆΠΈΡ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… общСдоступных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. Π’Ρ‹, вСроятно, ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ большС списков вакансий, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ явно ΠΏΡ€ΠΈΠ·Ρ‹Π²Π°ΡŽΡ‚ ΠΊ Java-программистам, Π½ΠΎ Π΄Π°ΠΆΠ΅ эти Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΏΠ°Π΄Π°ΡŽΡ‚. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Github Π½Π°Π·Ρ‹Π²Π°Π΅Ρ‚ Java Ρ‚Ρ€Π΅Ρ‚ΡŒΠΈΠΌ ΠΏΠΎ популярности языком Π² своих рСпозиториях, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ люди Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚. Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ C ΡƒΠΊΠ°Π·Π°Π½ ΠΏΠΎΠ΄ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ 9 (ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ C++ ΠΈ C# β€” Π΄Π²Π° ΠΎΡ‡Π΅Π½ΡŒ популярных отвСтвлСния C β€” находятся Π½Π° 6 ΠΈ 5 соотвСтствСнно. ΠΈΠ· самых простых языков программирования. Ни C, Π½ΠΈ Java нСльзя Π½Π°Π·Π²Π°Ρ‚ΡŒ простыми, Π½ΠΎ ΠΎΠ½ΠΈ ΠΎΠ±Π° ΠΌΠΎΠ³ΡƒΡ‚ Π΄Π°Ρ‚ΡŒ Π²Π°ΠΌ ΠΈΡΡ‡Π΅Ρ€ΠΏΡ‹Π²Π°ΡŽΡ‰Π΅Π΅ прСдставлСниС ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Π°ΠΆΠ½Ρ‹Ρ… концСпциях программирования.Β 

И ΠΏΠΎΠ±Π΅Π΄ΠΈΡ‚Π΅Π»Π΅ΠΌ становится…

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹ΠΉ язык, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ свои Π½Π°Π²Ρ‹ΠΊΠΈ, Java ΠΈ C β€” ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Ρ‹ ΠΈ отличная основа для продолТСния изучСния Π΄Ρ€ΡƒΠ³ΠΈΡ… языков.

ЗачислСниС Π½Π° ΠΎΠ½Π»Π°ΠΉΠ½-курсы ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π½Π° языкС C заставит вас ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ большС Β«Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ…Β» аспСктов программирования, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π²Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚Π΅ Π΄Π΅Π»ΠΎ с Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΠΌΠΈ Π² области ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… Π½Π°ΡƒΠΊ ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Java β€” ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ являСтся ΠΎΡ‡Π΅Π½ΡŒ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠΎΠΉ программирования.

Π§Π°ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊ измСнСниям, поэтому любой ΠΈΠ· этих языков даст Π²Π°ΠΌ ΠΏΡ€ΠΎΡ‡Π½ΡƒΡŽ основу для изучСния ΠΈ Π°Π΄Π°ΠΏΡ‚Π°Ρ†ΠΈΠΈ ΠΊ Π»ΡŽΠ±Ρ‹ΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ кодирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Π½Π° вашСм ΠΏΡƒΡ‚ΠΈ.


Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ C ΠΈ Java

БоглашСниС

Показ

  • Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² C
    • ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ особСнности C
  • Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Java
    • ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ особСнности Java
    • ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ особСнности Java
    • . ΠœΠ΅ΠΆΠ΄Ρƒ C ΠΈ Java
    • ΠŸΠ»ΡŽΡΡ‹ ΠΈ минусы C
    • ΠŸΠ»ΡŽΡΡ‹ ΠΈ минусы Java
    • C/Java: ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π½ΠΈΡ… Π»ΡƒΡ‡ΡˆΠ΅?
    • Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅
    • Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы (FAQ)
    • Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ рСсурсы

    Π”Π²Π° языка программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сформировали взгляд людСй Π½Π° ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Ρ†Π΅Π»ΠΎΠΌ ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π² частности, это Π½Π΅ Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ΅, ΠΊΠ°ΠΊ C ΠΈ Java. Π‘ ΠΎΠ΄Π½ΠΎΠΉ стороны, C β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых Ρ€Π°Π½Π½ΠΈΡ… языков, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ ΠΈ послуТили основой для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ мноТСства Π΄Ρ€ΡƒΠ³ΠΈΡ… языков программирования, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Python, C++, C# ΠΈ Ρ‚. Π΄. Java β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… ΠΈ популярных языков. ΠΈΠ·-Π·Π° надСТности ΠΈ мноТСства Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² интСрСсах ΠΏΠΎΡ‡Ρ‚ΠΈ всСх энтузиастов программирования ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ различиях ΠΌΠ΅ΠΆΠ΄Ρƒ этими двумя прСвосходными языками программирования, C ΠΈ Java. Π”Π°Π²Π°ΠΉΡ‚Π΅ сначала ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя Π½Π° ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΎΠ±ΠΎΠΈΡ… этих языков ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ.

    Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² C

    ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° C

    Один ΠΈΠ· ΡΡ‚Π°Ρ€Π΅ΠΉΡˆΠΈΡ… языков программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния всСх Π²Ρ€Π΅ΠΌΠ΅Π½, C Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Π² Bell Labs ДСннисом Π ΠΈΡ‚Ρ‡ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ 1972 ΠΈ 1973 Π³ΠΎΠ΄Π°ΠΌΠΈ. C Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ для создания ΡƒΡ‚ΠΈΠ»ΠΈΡ‚, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Π² Unix, ΠΈ примСнялся для ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ядра ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Unix.

    Π’ соврСмСнном ΠΌΠΈΡ€Π΅ C Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ своС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΌΠΈΠΊΡ€ΠΎΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… систСм. C ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ мноТСство Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ структурноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΎΠ±Π»Π°ΡΡ‚ΡŒ дСйствия лСксичСских ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ рСкурсия со статичСской систСмой Ρ‚ΠΈΠΏΠΎΠ² ΠΈ Ρ‚. Π΄. C Ρ‚Π°ΠΊΠΆΠ΅ извСстСн ΠΊΠ°ΠΊ язык срСднСго уровня, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ сочСтаСт Π² сСбС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠ°ΠΊ языков высокого уровня, Ρ‚Π°ΠΊ ΠΈ языков Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня. языки.

    ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ возмоТности C

    Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ особСнности C

    • C β€” структурированный язык программирования, Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ простой для изучСния.
    • Π­Ρ‚ΠΎ эффСктивный язык программирования, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠ½ быстрый ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.
    • C β€” это Π»Π΅Π³ΠΊΠΎ пСрСносимый ΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΡ‹ΠΉ язык программирования, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ Π½Π΅ привязан ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡƒ-Π»ΠΈΠ±ΠΎ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈΠ»ΠΈ систСмС. Π›ΡŽΠ±ΠΎΠΉ ΠΊΠΎΠ΄, написанный Π½Π° C, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π½Π° любой машинС, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰Π΅ΠΉ C, Π±Π΅Π· измСнСния Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΉ строки ΠΊΠΎΠ΄Π°.
    • C ΠΈΠΌΠ΅Π΅Ρ‚ Π±ΠΎΠ³Π°Ρ‚Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ встроСнных ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ с функциями.
    • C являСтся ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹ΠΌ ΠΈ статичСски Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ.

    ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ возмоТности языка C


    Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Java

    Java

    ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ ДТСймсом Гослингом Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Sun Microsystems, которая Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½Π° Oracle, Java являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· самых Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… языков соврСмСнности. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ сотнями ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΈ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°ΠΌΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ, Java стал самым популярным языком, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌ для создания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡.

    Java β€” это высокоуровнСвый ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ мСньшС зависимостСй. Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ WORA β€” Write Once Read Anywhere. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, скомпилированный ΠΊΠΎΠ΄ Java ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° всСх ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… Java, Π±Π΅Π· нСобходимости ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΉ компиляции.

    Java Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ мноТСство Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‰ΠΈΡ… возмоТности Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ классы, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π°ΠΏΠΏΠ»Π΅Ρ‚Ρ‹, сСрвлСты, страницы JavaServer ΠΈ Ρ‚. Π΄., ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π½Π° основС Java построСно мноТСство Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Spring, Dagger ΠΈ Ρ‚. Π΄., ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ.

    ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ особСнности Java

    Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ особСнности Java:

    • Одной ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ интСрСсных ΠΈ Π²Π°ΠΆΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Java, являСтся функция WORA β€” Write Once Run Anywhere. ПослС компиляции ΠΊΠΎΠ΄ Java ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π½Π° любой Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅. НапримСр, Ссли ΠΊΠΎΠ΄ Java Π±Ρ‹Π» написан Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС MAC, Ρ‚ΠΎΡ‚ ΠΆΠ΅ самый ΠΊΠΎΠ΄ Java ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡƒΡ‰Π΅Π½ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС Windows Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, Ссли Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС Windows установлСна ​​JVM (Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина Java).
    • Java β€” это чисто ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ всС ΠΊΠΎΠ΄Ρ‹ Java всСгда ΠΏΠΈΡˆΡƒΡ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ классов ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².
    • Java β€” это ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ язык с автоматичСским ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. Он ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Π΅ возмоТности для сборки мусора ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для распрСдСлСнных вычислСний ΠΈΠ·-Π·Π° своСй сСтСцСнтричности.
    • Java являСтся Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎΠΉ ΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΠΎΠΉ.
    • Java Ρ‚Π°ΠΊΠΆΠ΅ бСзопасна ΠΈ Π½Π°Π΄Π΅ΠΆΠ½Π°.

    Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Java


    Различия ΠΌΠ΅ΠΆΠ΄Ρƒ C ΠΈ Java

    C ΠΏΡ€ΠΎΡ‚ΠΈΠ² Java
    ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ сравнСния C Java
    Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π» Π½Π°
    , Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π½Π°
    , Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π½Π°
    , Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π½Π°
    , Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π½Π°
    . Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ ДТСймсом Гослингом Π² Sun Microsystems. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ Oracle.
    МодСль программирования C β€” ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ язык программирования Java β€” ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования.
    Π—Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ C зависит ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Он основан Π½Π° ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Write Once Compile Anywhere. Java Π½Π΅ зависит ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Он основан Π½Π° ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Write Once Run Anywhere.
    Π’ΠΈΠΏ языка C являСтся языком срСднСго уровня, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ связываСт мосты ΠΌΠ΅ΠΆΠ΄Ρƒ языками машинного уровня ΠΈ языками высокого уровня. Java являСтся языком высокого уровня, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΠΊΠΎΠ΄Π° Java происходит Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ язык с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ компилятора ΠΈΠ»ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π°.
    ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΈ интСрпрСтация C Ρ‚ΠΎΠ»ΡŒΠΊΠΎ компилируСтся, Π½ΠΎ Π½Π΅ интСрпрСтируСтся. Java компилируСтся ΠΈ интСрпрСтируСтся.
    Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ C ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ. Java Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.
    ΠœΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ C ΠΏΠΎ своСй сути Π½Π΅ являСтся ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹ΠΌ языком; ΠΎΠ΄Π½Π°ΠΊΠΎ сущСствуСт мноТСство Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ многопоточности. Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ.
    Π‘Π±ΠΎΡ€ΠΊΠ° мусора Π’ C сборку мусора Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. Π’ Java сборщик мусора автоматичСски выполняСт сборку мусора.
    Π’Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ памяти Для выдСлСния памяти Π² C ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠ°ΠΊ malloc(), calloc() ΠΈ Ρ‚. Π΄. Но Π² C Π½Π΅Ρ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова new. Для выдСлСния памяти Π² Java ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово new.
    ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΠΎ ссылкС C ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠ°ΠΊ Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ, Ρ‚Π°ΠΊ ΠΈ Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎ ссылкС. Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π²Ρ‹Π·ΠΎΠ² Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ.
    ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π―Π·Ρ‹ΠΊ программирования C ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ для систСмного, Ρ‚Π°ΠΊ ΠΈ для ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ программирования. Java ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для программирования ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ Π½Π΅ для систСмного программирования.
    Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ Π’ C Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ Π² основном ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ это язык ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠ³ΠΎ программирования. Π’ Java Π² основном Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π΅Π΄ΠΈΠ½ΠΈΡ†Π°ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования.
    ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова Π’ C ΠΎΠΊΠΎΠ»ΠΎ Ρ‚Ρ€ΠΈΠ΄Ρ†Π°Ρ‚ΠΈ Π΄Π²ΡƒΡ… ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов. Π’ Java ΠΎΠΊΠΎΠ»ΠΎ пятидСсяти ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов.
    Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ C ΠΌΠ΅Π½Π΅Π΅ бСзопасный язык программирования, Ρ‡Π΅ΠΌ Java. Java ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ бСзопасСн, Ρ‡Π΅ΠΌ C.
    Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° ΠšΠΎΠ΄Ρ‹ C хранятся с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ Ρ„Π°ΠΉΠ»Π° .c. ΠšΠΎΠ΄Ρ‹ Java хранятся с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ Ρ„Π°ΠΉΠ»Π° .java.
    ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ C Π½Π΅ прСдоставляСт возмоТности ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ. Java прСдоставляСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ с использованиСм ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов Β«tryΒ», Β«catchΒ», Β«finalΒ» ΠΈ Ρ‚. Π΄.
    ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ C ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ нисходящий ΠΏΠΎΠ΄Ρ…ΠΎΠ΄. Java ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ восходящий ΠΏΠΎΠ΄Ρ…ΠΎΠ΄.
    ΠŸΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ C Π½Π΅ являСтся ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ. Java β€” пСрСносимый язык программирования.
    ΠΠ°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ C Π½Π΅ являСтся Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ языком программирования. Java β€” Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ язык программирования, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Π΅ схСмы управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ.

    ΠŸΠ»ΡŽΡΡ‹ ΠΈ минусы C

    Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСимущСства использования C Π² качСствС языка программирования: компиляция.

  • Π―Π·Ρ‹ΠΊ C Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ прост для понимания, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΅Π³ΠΎ синтаксис ΠΎΡ‡Π΅Π½ΡŒ прост.
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ мноТСство встроСнных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ.
  • C β€” это язык с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ, способный Ρ€Π°ΡΡˆΠΈΡ€ΡΡ‚ΡŒΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π²ΠΏΠΎΠ»Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ C с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ прСпроцСссоров, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ GCC ΠΈΠ»ΠΈ Clang, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позаботится ΠΎΠ±ΠΎ всСм автоматичСски.
  • ΠšΠΎΠ΄Ρ‹ C ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π»Π΅Π³ΠΊΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Ρ‹.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСдостатки использования C Π² качСствС языка программирования:0005

  • Одним ΠΈΠ· нСдостатков C являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.
  • C Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ Π²ΠΎ врСмя выполнСния.
  • Π’ C Π½Π΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ автоматичСской сборки мусора. Π‘Π±ΠΎΡ€ΠΊΠ° мусора Π² C выполняСтся Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ.
  • C β€” это нСсколько нСбольшой ΠΈ основной ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ обСспСчиваСт минимальноС сокрытиС Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΡΠΊΡΠΊΠ»ΡŽΠ·ΠΈΠ²Π½ΡƒΡŽ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ. Π­Ρ‚ΠΎ сильно влияСт Π½Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ этого языка.
  • ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ C Ρ‚ΠΎΠ»ΡŒΠΊΠΎ компилируСтся ΠΈ Π½Π΅ интСрпрСтируСтся, ошибки ΠΈΠ»ΠΈ ошибки Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Ρ‹ послС ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строки ΠΊΠΎΠ΄Π°.

ΠŸΠ»ΡŽΡΡ‹ ΠΈ минусы Java

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСимущСства использования Java Π² качСствС языка программирования:

  • Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², стрСмящихся ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹. для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ.
  • Java β€” это Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹ΠΉ язык с ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ встроСнных классов ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… сцСнариях.
  • Java являСтся сСтСцСнтричным, поэтому Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для создания распрСдСлСнных систСм.
  • Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ позволяСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠΎΡ‚ΠΎΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, Ρ‚Π΅ΠΌ самым ΠΏΠΎΠ²Ρ‹ΡˆΠ°Ρ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ систСмы.
  • Java ΠΈΠΌΠ΅Π΅Ρ‚ большоС сообщСство Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ, Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡƒΡŽ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, которая ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΉ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… программистов сСгодня.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСдостатки использования Java Π² качСствС языка программирования:

  • Java ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ компилируСтся ΠΈ интСрпрСтируСтся, ΠΈΠ·-Π·Π° Ρ‡Π΅Π³ΠΎ ΠΎΠ½ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΉ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ языками, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ C, C++ ΠΈ Ρ‚. Π΄.
  • Из-Π·Π° высоких Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ памяти ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ обСспСчСния Java Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ возрастаСт.
  • Java Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ мноТСство Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… C, C++, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΈ Ρ‚. Π΄.

C/Java: ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π½ΠΈΡ… Π»ΡƒΡ‡ΡˆΠ΅?

Один ΠΈΠ· самых СстСствСнных вопросов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Ρƒ программистов, ΠΈΠ·ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… эти Π΄Π²Π° языка, β€” ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π΄Π²ΡƒΡ… Π»ΡƒΡ‡ΡˆΠ΅? Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° этот вопрос, Π½ΡƒΠΆΠ½ΠΎ ΡΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ сСбя, ΠΊΠ°ΠΊΠΎΠ² Π΅Π³ΠΎ ΠΈΠ»ΠΈ Π΅Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ использования. Если язык программирования Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² систСмах, Π³Π΄Π΅ высокая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠΌΠ΅ΡŽΡ‚ пСрвостСпСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‚ΠΎ, вСроятно, C являСтся Π»ΡƒΡ‡ΡˆΠΈΠΌ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ, Ρ‡Π΅ΠΌ Java.

Однако для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° случаСв создания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² ΠΈΠ»ΠΈ распрСдСлСнных систСм Java, бСзусловно, являСтся Π»ΡƒΡ‡ΡˆΠΈΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ ΠΈΠ·-Π·Π° Π΅Π΅ Π±ΠΎΠ³Π°Ρ‚Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ мноТСства Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, C ΠΈΠ»ΠΈ Java, Ρ‡Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅? Π½Π° самом Π΄Π΅Π»Π΅ это вопрос, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ использования ΠΈΠ»ΠΈ сцСнарий использования ясСн.


Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π˜Ρ‚Π°ΠΊ, Π² Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΡ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ±Π° языка, C ΠΈ Java, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ мноТСством ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΈ поэтому ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈΡ… ΠΎΠ±ΠΎΠΈΡ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ. Для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… программистов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ с Π½Π΅Ρ‚Π΅Ρ€ΠΏΠ΅Π½ΠΈΠ΅ΠΌ ΠΆΠ΄ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² индустрии ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΈΠ»ΠΈ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, Π»ΡƒΡ‡ΡˆΠ΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ большС ΠΎ Java ΠΈΠ·-Π·Π° разнообразия ΠΈ гибкости, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½Π° прСдоставляСт. Однако для людСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ хотят Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ созданиСм встроСнных систСм, ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… Π΄Π²ΠΈΠΆΠΊΠΎΠ² ΠΈ Ρ‚. Π΄., Π³Π΄Π΅ трСбуСтся высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, C, бСзусловно, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π»ΡƒΡ‡ΡˆΠΈΠΌ языком программирования, Ρ‡Π΅ΠΌ Java, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ быстрСС, Ρ‡Π΅ΠΌ Java.


Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы (FAQs)

Основана ли Java на C?
Π”Π°, Π½Π° синтаксис Java сильно повлиял синтаксис C ΠΈ C++.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ C Π΄ΠΎ сих ΠΏΠΎΡ€ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ?
C Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ Ρ†Π΅Π½Π΅Π½ ΠΈ Π°ΠΊΡ‚ΡƒΠ°Π»Π΅Π½ Π΄Π°ΠΆΠ΅ сСгодня ΠΈΠ·-Π·Π° Π΅Π³ΠΎ близости ΠΊ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ срСдствам, большой пСрСносимости ΠΈ Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ использования рСсурсов. Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ C высокоскоростным ΠΈ Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ языком, ΠΈ поэтому ΠΎΠ½ идСально ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, ядСр ΠΈ встроСнного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния.

Π§Ρ‚ΠΎ слоТнСС, C ΠΈΠ»ΠΈ Java?
ΠŸΡ€ΠΈ написании Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ C являСтся простым Π² использовании языком. Но ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Java ΠΏΡ€ΠΎΡ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·-Π·Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ Ρ‚. Π΄., ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСдоставляСт Java. LOC для довольно слоТных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ всСгда Π±ΡƒΠ΄Π΅Ρ‚ большС Π½Π° C, Ρ‡Π΅ΠΌ Π½Π° Java

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ рСсурсы

  • Π˜Π·ΡƒΡ‡Π΅Π½ΠΈΠ΅ Java
  • Вопросы для ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŒΡŽ ΠΏΠΎ Java
  • Вопросы для ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŒΡŽ ΠΏΠΎ C
  • Онлайн-компилятор Java
  • Онлайн-компилятор C
  • C Projects
  • Java Projects
  • Best Java IDE
  • C IDE
  • Features of C Language
  • Java Developer Skills
  • Java Developer Salary
  • Java vs Python
  • Difference Between C and C++

Difference Between C ΠΈ Java

Π‘Π°Ρ€Π±Π°Ρ€Π° Вомпсон

часов

ОбновлСно

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π‘?

C β€” это язык программирования, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π² Bell Lab Π² 1972 ДСнниса Π ΠΈΡ‚Ρ‡ΠΈ. Π―Π·Ρ‹ΠΊ C Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ с Ρ†Π΅Π»ΡŒΡŽ написания систСмного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Π­Ρ‚ΠΎ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ язык для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ систСм ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ.

Π―Π·Ρ‹ΠΊ C сочСтаСт Π² сСбС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ языка Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ ΠΈ высокого уровня. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΎΠ½ считаСтся языком срСднСго уровня.

Π’ этом руководствС ΠΏΠΎ различиям C ΠΈ Java Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅

  • Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ C?
  • Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Java?
  • Π˜ΡΡ‚ΠΎΡ€ΠΈΡ языка C
  • Π˜ΡΡ‚ΠΎΡ€ΠΈΡ Java
  • Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ C ΠΈ Java?
  • ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ C
  • ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Java
  • ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π‘
  • ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Java
  • ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° C
  • ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° Java
  • НСдостаток C
  • НСдостаток Java

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Java?

Java β€” это ΠΌΠ½ΠΎΠ³ΠΎΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹ΠΉ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΈ сСтСвой язык программирования. Π­Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… языков программирования. Java Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² качСствС Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, ΠΈ Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΎΠ½Π° Π±Ρ‹Π»Π° Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π° Sun Microsystem Π² 1995. ПозТС ΠΎΠ½ Π±Ρ‹Π» ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ†ΠΈΠ΅ΠΉ Oracle.

Google Trends C ΠΏΡ€ΠΎΡ‚ΠΈΠ² Java

ΠžΠ‘ΠΠžΠ’ΠΠ«Π• ΠžΠ’Π›Π˜Π§Π˜Π―:

  • C β€” ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ язык программирования, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Java β€” ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык.
  • C β€” это язык срСднСго уровня, Π° Java β€” язык высокого уровня.
  • C Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Java ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ многопоточности.
  • C ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, Π½ΠΎ Java Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.
  • Π’ C сборкой мусора Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, Π° Π² Java ΠΎΠ½Π° автоматичСски управляСтся сборщиком мусора
  • C ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ ΠΈ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΠΎ ссылкС, Π½ΠΎ Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ.
  • Π’ языкС C Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ памяти ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ malloc, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π² Java Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ памяти ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова.

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ языка C

Π’ΠΎΡ‚ Π²Π°ΠΆΠ½Ρ‹Π΅ Π²Π΅Ρ…ΠΈ ΠΈΠ· истории языка C:

  • Π’ 1967 Π³ΠΎΠ΄Ρƒ Π±Ρ‹Π» объявлСн Π½ΠΎΠ²Ρ‹ΠΉ язык программирования ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ BCPL, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования.
  • Π’ 1970 Π³ΠΎΠ΄Ρƒ КСн Вомпсон прСдставил Π½ΠΎΠ²Ρ‹ΠΉ язык программирования ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«BΒ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТал нСсколько Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Β«BCPLΒ».
  • Π’ 1972 Π³ΠΎΠ΄Ρƒ, послС языка B, Π²Π΅Π»ΠΈΠΊΠΈΠΉ ΡƒΡ‡Π΅Π½Ρ‹ΠΉ-ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‰ΠΈΠΊ ДСннис Π ΠΈΡ‚Ρ‡ΠΈ создал Π½ΠΎΠ²Ρ‹ΠΉ язык программирования ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«CΒ» Π² Bell Laboratories.
  • АмСриканский Π½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ институт стандартов (ANSI) ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ» коммСрчСский стандарт для языка C Π² 1989 Π³ΠΎΠ΄Ρƒ.
  • Π£Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ стандартизации (ISO) Π² 1990 Π³.

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ Java

Π’ΠΎΡ‚ Π²Π°ΠΆΠ½Ρ‹Π΅ Π²Π΅Ρ…ΠΈ ΠΈΠ· истории языка Java:

  • ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ язык Java назывался OAK. ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΎΠ½ Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ устройствами ΠΈ Ρ‚Π΅Π»Π΅Π²ΠΈΠ·ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ приставками. Π”ΡƒΠ± ΠΏΠΎΡ‚Π΅Ρ€ΠΏΠ΅Π» ΠΏΠΎΠ»Π½ΠΎΠ΅ фиаско.
  • Π’ 1995 Π³ΠΎΠ΄Ρƒ Sun ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»Π° Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π½Π° Β«JavaΒ» ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π»Π° язык, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ прСимущСствами растущСго бизнСса ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π²Π΅Π±-сайтов.
  • ПозднСС, Π² 2009 Π³ΠΎΠ΄Ρƒ, корпорация Oracle ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Π»Π° Sun Microsystems ΠΈ стала Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅ΠΌ Ρ‚Ρ€Π΅Ρ… ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… Π°ΠΊΡ‚ΠΈΠ²ΠΎΠ² Sun: Java, MySQL ΠΈ Solaris.
Вопросы ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ стСка C ΠΏΡ€ΠΎΡ‚ΠΈΠ² JAVA

C ΠΏΡ€ΠΎΡ‚ΠΈΠ².

Java Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ
C ΠΏΡ€ΠΎΡ‚ΠΈΠ² Java

Π’ΠΎΡ‚ Π²Π°ΠΆΠ½Ρ‹Π΅ различия ΠΌΠ΅ΠΆΠ΄Ρƒ C ΠΈ Java

C Π―Π²Π°
C β€” ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ язык программирования. Java β€” это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык.
C Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ ДСннисом М. Π ΠΈΡ‚Ρ‡ΠΈ Π² 1972 Π³ΠΎΠ΄Ρƒ. Π―Π·Ρ‹ΠΊ Java Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ ДТСймсом Гослингом Π² 1995.
Π­Ρ‚ΠΎ язык срСднСго уровня, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ устраняСт ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ языками машинного уровня ΠΈ языками высокого уровня. Π­Ρ‚ΠΎ язык высокого уровня, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΠΊΠΎΠ΄Π° происходит Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ компилятор ΠΈΠ»ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€.
Π’ объявлСнии C ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΎΠ±ΡŠΡΠ²Π»ΡΡŽΡ‚ΡΡ Π² Π½Π°Ρ‡Π°Π»Π΅ Π±Π»ΠΎΠΊΠ°. Π’ Java ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ Π³Π΄Π΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎ.
Free β€” это пСрСмСнная, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ для освобоТдСния памяти Π² C. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ освободит ΠΏΠ°ΠΌΡΡ‚ΡŒ, Π²Ρ‹Π·Π²Π°Π² сборщик мусора.
C Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ. Java ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ многопоточности.
C ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ. Java Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.
РаспрСдСлСниС памяти ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ malloc. Π’Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ памяти ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова.
Π‘Π±ΠΎΡ€Ρ‰ΠΈΠΊ мусора Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. Π’ Java ΠΎΠ½ автоматичСски управляСтся сборщиком мусора
C Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².
C ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ ΠΈ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΠΎ ссылкС. Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π²Ρ‹Π·ΠΎΠ² Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ.
БрСдняя Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π° C-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π² БША составляСт 104 051 Π΄ΠΎΠ»Π»Π°Ρ€ Π² Π³ΠΎΠ΄. БрСдняя Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Java составляСт 104 710 Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ² Π² Π³ΠΎΠ΄.
Π Π΅ΠΉΡ‚ΠΈΠ½Π³ TIOBE: 2 Π Π΅ΠΉΡ‚ΠΈΠ½Π³ TIOBE 1

ВозмоТности C

Π’ΠΎΡ‚ Π²Π°ΠΆΠ½Ρ‹Π΅ особСнности C

  • ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π° Π² освоСнии
  • Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык
  • Π‘ΠΎΠ·Π΄Π°Π΅Ρ‚ эффСктивныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹
  • C β€” это Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΈ основной язык ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠ³ΠΎ программирования. Если ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π·Π½Π°Π΅Ρ‚ C, ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ становится ΠΏΡ€ΠΎΡ‰Π΅.
  • ΠŸΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΡ‹ΠΉ язык программирования.
  • НСбольшой Ρ€Π°Π·ΠΌΠ΅Ρ€, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ содСрТит всСго 32 ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слова, Ρ‡Ρ‚ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ языка Java

НиТС пСрСчислСны Π²Π°ΠΆΠ½Ρ‹Π΅ особСнности языка Java.

  • ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ΄ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΈ запуститС Π΅Π³ΠΎ практичСски Π½Π° любой Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅
  • Он ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для создания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
  • Π­Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ язык с автоматичСским ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ.
  • ΠžΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ распрСдСлСнныС вычислСния, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π½Π° ΡΠ΅Ρ‚ΡŒ.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ C

Π’ΠΎΡ‚ Π²Π°ΠΆΠ½Ρ‹Π΅ прилоТСния языка C:

  • Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ основныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ всСх языков программирования
  • C ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ для развития Π½Π°Π²Ρ‹ΠΊΠΎΠ² программирования
  • ΠžΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ-зависимого программирования
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для производства компиляторов.
  • Π―Π·Ρ‹ΠΊ C ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π²ΠΎ встроСнных систСмах.
  • ИспользованиС для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…. MySQL β€” самоС популярноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС для Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, созданноС с использованиСм Β«CΒ».
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ систСмных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
  • C Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² ΠΈ ΠΈΡ… Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ. НапримСр, Google Chromium.
  • Π¨ΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² прилоТСниях IoT.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Java

Π’ΠΎΡ‚ Π²Π°ΠΆΠ½Ρ‹Π΅ прилоТСния языка Java:

  • ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ для Android
  • ΠšΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ПО
  • НаучныС Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ прилоТСния
  • Аналитика Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ…
  • Java-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… устройств
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для сСрвСрных Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Apache, JBoss, GlassFish ΠΈ Ρ‚. Π΄.

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° C

Π’ΠΎΡ‚ ΠΏΠ»ΡŽΡΡ‹/прСимущСства языка C:

  • ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык
  • Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ компиляции
  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½
  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°
  • C ΠΌΠΎΠΆΠ΅Ρ‚ Π»Π΅Π³ΠΊΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ с нСбольшими измСнСниями.
  • Код языка ΠΈΠ»ΠΈ синтаксис C Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово if, else, switch ΠΈ Ρ‚. Π΄.
  • ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ C Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ быстро ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ компиляторами высокого языка.
  • Он Π±ΠΎΠ»Π΅Π΅ эффСктивСн, Ρ‡Π΅ΠΌ нСструктурированный ΠΊΠΎΠ΄, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ создаСт минимальноС количСство Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠΉ ΠΊΠΎΠ΄Π°.
  • Π‘ΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° C Π»Π΅Π³ΠΊΠΎ благодаря удобочитаСмости ΠΊΠΎΠ΄Π°.
  • Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ Π±Π»ΠΎΠΊ для ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… языков программирования
  • ΠœΠΎΡ‰Π½Ρ‹ΠΉ ΠΈ эффСктивный язык
  • ΠŸΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ язык
  • ВстроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
  • ΠšΠ°Ρ‡Π΅ΡΡ‚Π²ΠΎ для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ самого сСбя
  • Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования
  • Π―Π·Ρ‹ΠΊ срСднСго уровня
  • ΠŸΡ€ΠΎΡΡ‚Π°Ρ рСализация Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΈ структур Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° Java

Π’ΠΎΡ‚ прСимущСства ΠΈ ΠΏΠ»ΡŽΡΡ‹ использования Java

  • Доступна подробная докумСнтация.
  • ДоступСн большой ΠΏΡƒΠ» ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²
  • ΠžΠ³Ρ€ΠΎΠΌΠ½Ρ‹ΠΉ массив сторонних Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ
  • ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ стандартныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΊΠΎΠ΄.
  • Π­Ρ‚ΠΎ многопоточная срСда, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ мноТСство Π·Π°Π΄Π°Ρ‡ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.
  • ΠžΡ‚Π»ΠΈΡ‡Π½Π°Ρ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ
  • Удобная навигация ΠΏΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌ

НСдостаток C

  • C Π½Π΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ ООП
  • Π’ языкС программирования C ошибки ΠΈΠ»ΠΈ Π±Π°Π³ΠΈ Π½Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Ρ‹ послС ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строки ΠΊΠΎΠ΄Π°.
  • Π’Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ с Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π² C.
  • Π­Ρ‚ΠΎ нСбольшой Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ язык, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ минимальноС сокрытиС Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΡΠΊΡΠΊΠ»ΡŽΠ·ΠΈΠ²Π½ΡƒΡŽ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ влияСт Π½Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ этого языка.
  • C Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ понятия пространства ΠΈΠΌΠ΅Π½, конструктора ΠΈ дСструктора.
  • ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ‚ΠΈΠΏΠ° Π²ΠΎ врСмя выполнСния нСдоступна

НСдостаток Java

Π’ΠΎΡ‚ минусы/нСдостаток использования языка Java

  • ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ JIT Π΄Π΅Π»Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ.
  • Java ΠΏΡ€Π΅Π΄ΡŠΡΠ²Π»ΡΠ΅Ρ‚ высокиС трСбования ΠΊ памяти ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ оборудования увСличиваСтся.
  • Он Π½Π΅ обСспСчиваСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… конструкций, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.
  • Π£ вас Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ контроля Π½Π°Π΄ сборкой мусора, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Java Π½Π΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠ°ΠΊ delete(), free().

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ C ΠΈ Java

ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ β†’ ← прСдыдущая

C β€” ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ, срСднСго уровня, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ, ΠΈ язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния. Java β€” это высокоуровнСвый ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния. Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ C ΠΈ Java Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ C ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ «свСрху Π²Π½ΠΈΠ·Β» для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Java ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ «снизу Π²Π²Π΅Ρ€Ρ…Β».

C Π»Π΅Π³Ρ‡Π΅ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ, Ρ‡Π΅ΠΌ Java. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ быстро ΠΈ Π»Π΅Π³ΠΊΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Java. Если Ρ‚Ρƒ ΠΆΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½Π° языкС C, Ρ‚ΠΎ ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΌ ΠΈ Π·Π°ΠΉΠΌΠ΅Ρ‚ большС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ‡Π΅ΠΌ Java. Π•ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ отличия, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ обсуТдали Π² этом Ρ€Π°Π·Π΄Π΅Π»Π΅.

Π‘

C β€” это язык программирования срСднСго уровня ΠΈ ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния. Он Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Π² Bell Labs ДСннисом Π ΠΈΡ‚Ρ‡ΠΈ Π² 1970 для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Unix Π² 1970 Π³ΠΎΠ΄Ρƒ. Он идСально ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Π―Π²Π°

Π’ 1991 Π³ΠΎΠ΄Ρƒ Sun Microsystems Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° язык программирования Java. Команда, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π²ΡˆΠ°Ρ Java, извСстна ΠΊΠ°ΠΊ Green Team. Когда Sun Microsystems запустила Java, ΠΎΠ½Π° Π½Π°Π·Ρ‹Π²Π°Π»Π°ΡΡŒ OAK. Π’ 1995 Π³ΠΎΠ΄Ρƒ Π΅Π³ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π±Ρ‹Π»ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ Π½Π° Java. Sun Microsystems Π±Ρ‹Π»Π° ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½Π° ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ†ΠΈΠ΅ΠΉ Oracle Π² 2009 Π³ΠΎΠ΄Ρƒ. Π‘ Ρ‚Π΅Ρ… ΠΏΠΎΡ€ Java являСтся ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠΌ Oracle. Основной Ρ†Π΅Π»ΡŒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ этого языка Π±Ρ‹Π»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… устройств.

Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ C ΠΈ Java

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΌΡ‹ описали Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ различия ΠΌΠ΅ΠΆΠ΄Ρƒ C ΠΈ Java.

Π‘Π΅Ρ€ΠΈΠΉΠ½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ Основа Π‘ Π―Π²Π°
1 Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ языка C β€” это язык срСднСго уровня . Java β€” это язык высокого уровня .
2 ΠŸΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ° C являСтся конструкционным ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования . Java β€” это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования
3 ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ ΠŸΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ прилоТСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ «ΡΠ²Π΅Ρ€Ρ…Ρƒ Π²Π½ΠΈΠ·» . ΠŸΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ прилоТСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ «ΡΠ½ΠΈΠ·Ρƒ Π²Π²Π΅Ρ€Ρ…» .
4 ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π­Ρ‚ΠΎ скомпилированный язык . Π­Ρ‚ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ язык .
5 Π—Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° зависит ΠΎΡ‚ . ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½ΠΎ- нСзависимый .
6 ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова Π•ΡΡ‚ΡŒ 32 ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов Π² C. Java ΠΈΠΌΠ΅Π΅Ρ‚ 50 ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов.
7 ΠšΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ООП Π­Ρ‚ΠΎ Π½Π΅ слСдуСт концСпциям ООП. Он слСдуСт концСпциям ООП .
8 Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° Π€Π°ΠΉΠ» сохранСн с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .c . Π€Π°ΠΉΠ» сохранСн с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .java .
9 Π‘Ρ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π±Π»ΠΎΠΊ Ѐункция управляСмая. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈ Класс Π²Π΅Π΄ΠΎΠΌΡ‹Π΅.
10 Π‘Ρ‚ΠΈΠ»ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² / *ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ*/ //ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΈΠ»ΠΈ /*ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ*/
11 Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Π­Ρ‚ΠΎ нСбСзопасно . Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΉ язык .
12 Π’ΠΈΠΏ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ ΠΊΠΎΠ΄ Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ язык , Ρ‡Ρ‚ΠΎΠ±Ρ‹ машина ΠΌΠΎΠ³Π»Π° ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΊΠΎΠ΄. Он ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ ΠΊΠΎΠ΄ Π² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄ , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выполняСтся JVM.
13 Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Он ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ указатСля. Π­Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈΠ· сообраТСний бСзопасности.
14 ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ отсутствуСт Π½Π° языкС C. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Ρ€Π°Π²Π½Π° прСдставляСт Π½Π° Java.
15 НаслСдство Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ наслСдованиС , ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования ΠΊΠΎΠ΄Π°. Он ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ наслСдованиС , Ρ‡Ρ‚ΠΎ обСспСчиваСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования ΠΊΠΎΠ΄Π°.
16 НарСзаниС Ρ€Π΅Π·ΡŒΠ±Ρ‹ БущСствуСт Π½Π΅Ρ‚ понятия Ρ€Π΅Π·ΡŒΠ±Ρ‹. Он ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ многопоточности.
17 Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ВнутрСнняя ΠΏΠ°ΠΌΡΡ‚ΡŒ Π½Π΅ поддСрТиваСтся. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ.
18 Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° Π‘ΠΎΠ·Π΄Π°Π΅Ρ‚ Ρ„Π°ΠΉΠ» .exe . Π“Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ„Π°ΠΉΠ» .class .
19 Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° НСпосрСдствСнно выполняСт ΠΊΠΎΠ΄. ВыполняСт ΠΊΠΎΠ΄ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ JVM.
20 Π’Ρ‹Π·ΠΎΠ² ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ/ Π’Ρ‹Π·ΠΎΠ² ΠΏΠΎ ссылкС Он ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠ°ΠΊ Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ , Ρ‚Π°ΠΊ ΠΈ Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎ ссылкС . ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ .
21 ΠŸΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Π­Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½ΠΎ. Он ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ.
22 ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ goto. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ goto Π½Π΅ поддСрТиваСтся.
23 Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ ΠΎ прСпроцСссорах ΠŸΡ€Π΅ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² C. ΠŸΡ€Π΅ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€Ρ‹ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² Java.
24 ΠŸΡ€ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ НСнадСТный. Он Π½Π°Π΄Π΅ΠΆΠ΅Π½ благодаря ΡΠΈΠ»ΡŒΠ½ΠΎΠΌΡƒ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ.
25 Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π’ основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ систСмныС прилоТСния ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ. Он Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ .
26 ΠŸΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ/ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ функция/ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Он Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ эти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ. Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ всС эти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ.
27 ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Π­Ρ‚ΠΎ ΠΌΠ΅Π½Π΅Π΅ популярный ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Java. Π­Ρ‚ΠΎ самый популярный язык программирования .

НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Java стал популярным языком программирования для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Android, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ IoT ΠΈ Ρ‚. Π΄. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, C Π½Π΅ потСрял своСй популярности, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… систСмных ΡƒΡ‚ΠΈΠ»ΠΈΡ‚. .


Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ‚Π΅ΠΌΠ°ΠšΠ°ΠΊ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° JSON Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Java

← прСдыдущая ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ β†’

Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ C, C++ ΠΈ Java

ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ β†’ ← прСдыдущая

Π―Π·Ρ‹ΠΊΠΈ программирования C , C++ ΠΈ Java ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярными ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ языками программирования Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅. Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ обсудим Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ C, C++ ΠΈ Java. Помимо схоТСсти синтаксиса ΠΈ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ±Π° ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΈΡ… Ρ†Π΅Π»ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ философия Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹.

Π‘

C β€” это язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, структурированный, ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ ΠΈ высокого уровня, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ ДСннисом ΠœΠ°ΠΊΠ°Π»ΠΈΡΡ‚Π΅Ρ€ΠΎΠΌ Π ΠΈΡ‡ΠΈ Π² 1972 Π³ΠΎΠ΄Ρƒ Π² Bell Laboratories . ΠŸΡ€Π΅Π΅ΠΌΠ½ΠΈΠΊΠΎΠΌ языка C стал CPL (Combined Programming Language). Он Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для систСмного программирования, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ², компиляторов ΠΈ Ρ‚. Π΄.

Π‘Π°ΠΌΡ‹ΠΌΠΈ извСстными ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… с использованиСм языка C, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Unix ΠΈ Linux.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ языка C

  • Автономный ΠΈ ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ
  • Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ управлСния ΠΈ структура
  • Π‘ΠΎΠ³Π°Ρ‚Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²
  • ΠŸΡ€ΠΎΡΡ‚ΠΎ, быстро ΠΈ эффСктивно
  • Π‘ ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ рСгистра
  • НСдостаточноС использованиС памяти
  • Π›Π΅Π³ΠΊΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΡ‹ΠΉ
  • БтатичСская типизация

Π‘++

C++ β€” это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π‘ΡŒΡΡ€Π½ΠΎΠΌ Бтрауструпом Π² Bell Labs Π² 1979. Он основан Π½Π° языкС C ΠΈΠ»ΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, являСтся Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ языка C. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

ВозмоТности языка C++

  • Π‘ ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ рСгистра
  • ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ Π½Π° основС
  • НСзависимо ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹
  • ΠŸΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ
  • ДинамичСскоС Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ памяти

Π―Π²Π°

Java Ρ‚Π°ΠΊΠΆΠ΅ являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ, основанным Π½Π° классах, статичСским, ΡΠΈΠ»ΡŒΠ½Ρ‹ΠΌ, Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ, бСзопасным ΠΈ высокоуровнСвым языком программирования. Он Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ ДТСймс Гослинг Π² 1995 Π³ΠΎΠ΄Ρƒ. Π­Ρ‚ΠΎ Π±ΠΎΡ‚, скомпилированный ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ…, ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Java

  • ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ
  • АрхитСктурно-Π½Π΅ΠΉΡ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ
  • ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹
  • ДинамичСский ΠΈ распрСдСлСнный
  • ΠŸΡ€ΠΎΡ‡Π½Ρ‹ΠΉ
  • Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ
  • ΠœΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ

На ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ рисункС ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, Ρ‡Ρ‚ΠΎ C++ основан Π½Π° языкС C, Π° Java β€” Π½Π° C++ ΠΈ языкС C.

ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ C, C++ ΠΈ Java согласно индСксу TIOBE.

C ΠΏΡ€ΠΎΡ‚ΠΈΠ² C++ ΠΏΡ€ΠΎΡ‚ΠΈΠ² Java

Π―Π·Ρ‹ΠΊΠΈ основаны Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π΅, Π½ΠΎ, Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ½ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΏΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Ρƒ ΠΈ философии. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ описаны основныС различия ΠΌΠ΅ΠΆΠ΄Ρƒ C, C++ ΠΈ Java. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ язык Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ.

Б.Н. Основа Б Б++ Ява
1 ΠŸΡ€ΠΎΠΈΡΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π―Π·Ρ‹ΠΊ C основан Π½Π° BCPL. Π―Π·Ρ‹ΠΊ C++ основан Π½Π° языкС C. Π―Π·Ρ‹ΠΊ программирования Java основан Π½Π° C ΠΈ C++.
2 Π¨Π°Π±Π»ΠΎΠ½ программирования Π­Ρ‚ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ язык. Π­Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования. Π­Ρ‚ΠΎ чисто ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования.
3 ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ нисходящий ΠΏΠΎΠ΄Ρ…ΠΎΠ΄. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ восходящий ΠΏΠΎΠ΄Ρ…ΠΎΠ΄. Π’Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ восходящий ΠΏΠΎΠ΄Ρ…ΠΎΠ΄.
4 ДинамичСский ΠΈΠ»ΠΈ статичСский Π­Ρ‚ΠΎ статичСский язык программирования. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ статичСский язык программирования. Π­Ρ‚ΠΎ динамичСский язык программирования.
5 ИсполнСниС ΠΊΠΎΠ΄Π° Код выполняСтся Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ. Код выполняСтся Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ. Код выполняСтся JVM.
6 Π—Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π­Ρ‚ΠΎ зависит ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π­Ρ‚ΠΎ зависит ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. НС зависит ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ·-Π·Π° Π±Π°ΠΉΡ‚ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.
7 ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊ Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ компилятор Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° ΠΊΠΎΠ΄Π° Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ язык. Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ компилятор Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° ΠΊΠΎΠ΄Π° Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ язык. Java ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΊΠ°ΠΊ компилятор, Ρ‚Π°ΠΊ ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ извСстСн ΠΊΠ°ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ язык.
8 Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° Π‘ΠΎΠ·Π΄Π°Π΅Ρ‚ Ρ„Π°ΠΉΠ»Ρ‹ .exe ΠΈ .bak. Π‘ΠΎΠ·Π΄Π°Π΅Ρ‚ Ρ„Π°ΠΉΠ» .exe. Π‘ΠΎΠ·Π΄Π°Π΅Ρ‚ Ρ„Π°ΠΉΠ» .class.
9 НомСр ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова Π’ языкС Π‘ΠΈ имССтся 32 ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов. Π’ языкС C++ имССтся 60 ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов. Π’ языкС Java имССтся 52 ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов.
10 Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ исходного Ρ„Π°ΠΉΠ»Π° Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ .c. Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ .cpp. Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ .java.
11 ΠšΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡ указатСля ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ. Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ. Java Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ указатСля ΠΈΠ· сообраТСний бСзопасности.
12 ОбъСдинСниС ΠΈ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… структуры ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… объСдинСния ΠΈ структуры. Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… объСдинСния ΠΈ структуры. НС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… объСдинСниС ΠΈ структура.
13 Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ прСпроцСссора Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ прСпроцСссора, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ #include, #define ΠΈ Ρ‚. Π΄. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ прСпроцСссора, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ #include, #define, #header ΠΈ Ρ‚. Π΄. Он Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹, Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹.
14 ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€/ ДСструктор НС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ конструктор ΠΈ дСструктор. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠ°ΠΊ конструктор, Ρ‚Π°ΠΊ ΠΈ дСструктор. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ конструкторы.
15 ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ НС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ. Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ.
16 Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ calloc(), malloc(), free() ΠΈ realloc() для управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. Для управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ new ΠΈ delete. Для управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ сборщик мусора.
17 ΠŸΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° НС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ. Достигнута ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ². Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°.
18 ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ заявлСнию ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ goto. Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ goto. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ goto Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ.
19 Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π¨ΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм. Π¨ΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для систСмного программирования. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Windows.
20 Π Π°Π·ΠΌΠ΅Ρ€ массива Массив Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ объявлСн с Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ. НапримСр, Ρ†Π΅Π»ΠΎΠ΅ число[10]. Массив Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ объявлСн с Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ. Массив ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ Π±Π΅Π· указания Ρ€Π°Π·ΠΌΠ΅Ρ€Π°. НапримСр, int число[].

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ‚Π΅ΠΌΠ°ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ строки Java

← прСдыдущая ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ β†’

Java ΠΈ C ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ различия, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°Ρ‚ΡŒ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ постСпСнно становится Ρ‡Π°ΡΡ‚ΡŒΡŽ нашСй ΠΆΠΈΠ·Π½ΠΈ. Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… структурах ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ программистов.

БСгодня доступны Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ языки программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ стСпСни сравнимы ΠΈΠ»ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°. Как ΠΈ Π² случаС с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ модСлью, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ языки зависят ΠΎΡ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ ООП.

НСльзя Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈ ΠΎΡ‚Ρ€Π΅ΠΏΠ΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всС языки Π·Π° ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·.

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ людСй ΠΏΡƒΡ‚Π°ΡŽΡ‚ΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ нСсколькими языками программирования ΠΈ ΠΈΡ‰ΡƒΡ‚ различия Π² Ρ‚Π°ΠΊΠΈΡ… языках, ΠΊΠ°ΠΊ Java ΠΈ C.

Π’Ρ‹ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Π΅ΠΌ Java ΠΈ C ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°?

Π’ этом Π±Π»ΠΎΠ³Π΅ наши экспСрты ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΠ±ΡŠΡΡΠ½ΡΡŽΡ‚ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ c.

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΎΠ±ΡΡƒΠΆΠ΄Π°Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ C, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ сначала ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎΠ± ΠΎΠ±ΠΎΠΈΡ… языках.

Π―Π·Ρ‹ΠΊ программирования Java

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Java β€” это ΠΎΠ±Ρ‰Π΅ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ язык программирования, ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ созданный для использования Π² условиях распрСдСлСнной сСти. Π­Ρ‚ΠΎ самый извСстный язык программирования для ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠ² Android, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых популярных языков для продвиТСния ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½Ρ‹Ρ… Π³Π°Π΄ΠΆΠ΅Ρ‚ΠΎΠ² ΠΈ сСти Π²Π΅Ρ‰Π΅ΠΉ.

Java Π±Ρ‹Π» создан, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ внСшний Π²ΠΈΠ΄ языка программирования C++; ΠΎΠ΄Π½Π°ΠΊΠΎ Π»Π΅Π³Ρ‡Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ модСль ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Java для создания ΠΏΠΎΠ»Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ПК ΠΈΠ»ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвСрами ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ Π² систСмС. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ для создания нСбольшого модуля прилоТСния ΠΈΠ»ΠΈ Π°ΠΏΠΏΠ»Π΅Ρ‚Π° для использования Π² качСствС основного аспСкта Π²Π΅Π±-страницы. Он Π±Ρ‹Π» создан Π² 1995 ДТСймса Гослинга.

Π―Π·Ρ‹ΠΊ программирования C

C β€” ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ язык программирования. Π’ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΎΠ½ Π±Ρ‹Π» создан ДСннисом Π ΠΈΡ‚Ρ‡ΠΈ Π² 1972 Π³ΠΎΠ΄Ρƒ ΠΊΠ°ΠΊ язык программирования Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° для написания ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ срСды.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ характСристики языка C Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΉ доступ ΠΊ памяти, прямоС располоТСниС ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов ΠΈ чистый ΡΡ‚ΠΈΠ»ΡŒ. Π­Ρ‚ΠΈ характСристики Π΄Π΅Π»Π°ΡŽΡ‚ язык C ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΡ‹ΠΌ для программирования Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ опСрационная систСма ΠΈΠ»ΠΈ ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΡ компилятора.

C β€” ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… случаях логичСского программирования. Он создаСт Ρ†Π΅Π½Ρ‚Ρ€ соврСмСнных языков Java ΠΈ C++, Π° C β€” ΠΎΡ‡Π΅Π½ΡŒ простой язык.

ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ языка Java
  • ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ для ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠ² (Ρ€Π΅Π΄ΠΊΠΎ прилоТСния для Android)
  • ΠΠ°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Π΅ прилоТСния
  • Π’Π΅Π±-прилоТСния
  • Π’Π΅Π±-сСрвСры ΠΈ сСрвСры ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ
  • Π˜Π³Ρ€Ρ‹
  • Бвязь с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…
  • Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅!

ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ языка C
  • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы.
  • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ систСмных инструмСнтов.
  • ΠžΡ†Π΅Π½ΠΊΠ° матСматичСских ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ.
  • Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ компиляторы Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… языков.
  • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ графичСских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² мСханичСских тСхнологиях ΠΈΠ»ΠΈ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠ΅.

Π—Π°Ρ‡Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Java?
  • Java Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… этапах (Windows, Mac, Linux, Raspberry Pi ΠΈΒ Ρ‚.Β Π΄.)Β 
  • Π­Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых извСстных языков программирования.
  • Java являСтся бСсплатным ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ.
  • Π­Ρ‚ΠΎ бСзопасно, быстро ΠΈ ΠΏΠΎΡ‚Ρ€ΡΡΠ°ΡŽΡ‰Π΅.
  • Он ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΡƒΡŽ ΡΠ΅Ρ‚Π΅Π²ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ (бСсчислСнноС количСство ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ²)

Π‘ΠΌ. Ρ‚Π°ΠΊΠΆΠ΅ Π‘ΠΎΠ²Π΅Ρ‚Ρ‹ ΠΏΠΎ написанию Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π½ΠΎΠ³ΠΎ эссС: ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании эссС

Π—Π°Ρ‡Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ C?
  • Π­Ρ‚ΠΎ Π±Ρ‹Π» (ΠΈ остаСтся ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… условиях) язык Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм.
  • ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΌΠΈ частями ПК.
  • ΠœΠ½ΠΎΠ³ΠΎΡ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΠΏΠΎ наслСдованию написаны Π½Π° C.Β 
  • Π‘ΠΎΠ»Π΅Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΈΠ·ΡƒΡ‡Π°Π΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ C, Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ пСрСнСсСна Π² Π±ΡƒΠ΄ΡƒΡ‰ΠΈΠ΅ языки программирования.
  • ΠŸΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, созданныС Π½Π° C, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ быстро.
  • C ΠΈΠΌΠ΅Π΅Ρ‚ Π»ΠΈΠ½Π³Π²ΠΈΡΡ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ структуру (ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ сСмантику) Π±Π»ΠΈΠ·ΠΊΡƒΡŽ ΠΊ Matlab, Ρ‡Ρ‚ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅.
  • ΠŸΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ создаСтС Π½Π° C, Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ «нСзависимы». Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ писали Π½Π° Matlab, Π½ΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π² Matlab для Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΈ Ссли Π²Ρ‹ Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚Π΅ ΠΊ Matlab, Π²Ρ‹ ΠΎΠΊΠ°ΠΆΠ΅Ρ‚Π΅ΡΡŒ Π² слоТной ситуации. ПослС накоплСния Π² «исполняСмыС Ρ„Π°ΠΉΠ»Ρ‹Β» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языкС C ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½Ρ‹ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ (сопоставимыС) ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π±Π΅Π· исходного ΠΊΠΎΠ΄Π°.
  • Когда ΠΌΡ‹ пишСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° языкС программирования C, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π΅ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ для ΡƒΡ‡Π΅Π±Ρ‹ ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹, ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡ… ΠΏΠΎΠ½ΡΡ‚ΡŒ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² ΠΈΠ΄Π΅Π°Π»Π΅ Ρƒ вас Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΡ…Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π·Π° Π½ΠΈΠΌΠΈ, ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΈΡ….

Зная ΠΎΠ± ΠΎΠ±ΠΎΠΈΡ… языках, ΠΌΡ‹ обсудим ΠΈΡ… различия.

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° Java ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с C

C

Java

Java ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с. Π‘

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Ρ‚ΠΎΡ‡ΠΊΠΈ Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΏΡ€ΠΎΡ‚ΠΈΠ² C

Java C
Java Language GraviS Graven. Π ΠΈΡ‡ΠΈ Π² 1972 Π³.
Π­Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык, Π° Π½Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ. Π­Ρ‚ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ язык программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ зависит ΠΎΡ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€.
Java β€” это язык программирования, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π½Π° Π΄Π°Π½Π½Ρ‹Π΅. Π­Ρ‚ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования.
Java β€” это язык высокого уровня, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ†Π΅Π»Π΅ΠΉ. C β€” язык срСднСго уровня (Π½ΠΈ высокого, Π½ΠΈ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня)
Java β€” ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ язык, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠΎΠ΄ сначала прСобразуСтся Π² Π±Π°ΠΉΡ‚-ΠΊΠΎΠ΄Ρ‹, Π° Π·Π°Ρ‚Π΅ΠΌ выполняСтся JVM (Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина Java). C являСтся ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ языком, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠΎΠ΄ пСрСводится Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ язык.
РазбиваСтся Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. РазбиваСтся Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.
Java слСдуСт свойству наслСдования, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования ΠΊΠΎΠ΄Π°. C Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ООП, поэтому Π½Π΅ содСрТит свойства наслСдования.
Java Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для систСмного ΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ программирования. C ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ для ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ, Ρ‚Π°ΠΊ ΠΈ для систСмного программирования.
НовоС ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для выдСлСния памяти Π² java. Ѐункция Malloc ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для выдСлСния памяти Π² C.
Π’ Java ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π³Π΄Π΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎ. Π’ послСднСй вСрсии C пСрСмСнная ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ объявлСна ​​гдС ΡƒΠ³ΠΎΠ΄Π½ΠΎ.
Для освобоТдСния памяти ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ компилятор. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Free.
Java Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ. Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ языка программирования C.
ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ многопоточности. НС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ.
Java являСтся пСрСносимым, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° любой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅. C Π½Π΅ являСтся пСрСносимым.
ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠ°ΠΊ Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ, Ρ‚Π°ΠΊ ΠΈ Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎ ссылкС.
Java Π½Π΅ зависит ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π―Π·Ρ‹ΠΊ C зависит ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ для запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.
Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Π½Π° основС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.
Java Π½Π°Π΄Π΅ΠΆΠ΅Π½, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° провСряСтся ΠΏΠ΅Ρ€Π΅Π΄ запуском. Π―Π·Ρ‹ΠΊ C Π½Π΅Π½Π°Π΄Π΅ΠΆΠ΅Π½, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π΅ провСряСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ сцСнариСв.
ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ΡΡ восходящий ΠΏΠΎΠ΄Ρ…ΠΎΠ΄. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ нисходящий ΠΏΠΎΠ΄Ρ…ΠΎΠ΄.
Java ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ систСму ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ. C Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ систСму ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ.
НС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ прСпроцСссоры. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ прСпроцСссоры.
ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ ООП. НС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ ООП.
Π’ Π½Π΅ΠΌ 50 ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ. Он содСрТит 32 ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слова, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ.
НС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ объСдинСниС ΠΈ структуру. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… объСдинСния ΠΈ структуры.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ различия ΠΌΠ΅ΠΆΠ΄Ρƒ Java ΠΈ C

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ различия ΠΌΠ΅ΠΆΠ΄Ρƒ C ΠΈ Java Ρ€Π°Π·ΡŠΡΡΠ½ΡΡŽΡ‚ΡΡ Π² ΠΏΡƒΠ½ΠΊΡ‚Π°Ρ…, ΠΎΠ±ΡŠΡΡΠ½Π΅Π½Π½Ρ‹Ρ… Π½ΠΈΠΆΠ΅:

  • Π€ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ C ΠΈ Java Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΌΠΈΡ€ΠΎΠ²ΠΎΠ·Π·Ρ€Π΅Π½ΠΈΠΈ программирования.
  • C Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ идСю ООП, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ООП. Π’ соотвСтствии с этим Java ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚, ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ ΡΠ²ΡΠ·Π°Ρ‚ΡŒ Π²Π΅Ρ‰ΠΈ, ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π² этой Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.
  • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ Ρ‚Π°ΠΊΠΆΠ΅ являСтся Π²Π°ΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ зрСния, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Java Π½Π΅ позволяСт Π½Π°ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ памяти. Π­Ρ‚ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ Π½Π°Π΄Π·ΠΎΡ€, ΠΈ Π² этом ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ ΠΎΡ‡Π΅Π½ΡŒ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° построСнии бизнСс-обоснования.
  • ΠœΠΎΠ±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ являСтся Π²Π°ΠΆΠ½Ρ‹ΠΌ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Π΄ΡƒΠΌΠ°Π΅ΠΌ ΠΎ языках Π² Ρ‚ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚, ΠΊΠΎΠ³Π΄Π° ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ Java Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Π²Π°Π΅Ρ‚ Π³ΠΎΠ½ΠΊΡƒ Π·Π° ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ.

БыстрыС ссылки

Swift ΠΈ Java

Python ΠΈ JavascriptΒ 

Π—Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ слова

Из ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹ΡˆΠ΅ обсуТдСния ΠΌΡ‹ ΠΏΡ€ΠΈΡˆΠ»ΠΈ ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ Java ΠΈ C β€” Π΄Π²Π° Ρ€Π°Π·Π½Ρ‹Ρ… языка программирования. Java β€” самый извСстный язык Π½Π° бизнСс-ΡƒΡ€ΠΎΠ²Π½Π΅ для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ пСрСносимых ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ C, Π±ΡƒΠ΄ΡƒΡ‡ΠΈ самым старым языком, Ρ‚Π°ΠΊΠΆΠ΅ являСтся распространСнным языком.