Anda di halaman 1dari 15

MODUL PERKULIAHAN

ALGORTIMA DAN
PEMROGRAMAN

Pengenalan.NET dan Bahasa C#

Fakultas : Teknologi dan Informatika Tatap Muka Kode Mata Kuliah : W4119003

Program Studi : Teknik Informatika


01 Disusun Oleh : Riad Sahara, S.SI., MT

ABSTRAK TUJUAN
Halo! Selamat datang di matakuliah Mahasiswa mampu memahami
“Algoritma Pemorgraman” Materi tentang apa itu .NET, fungsi, dan
kita kali ini adalah tentang apa itu cara kerjanya.
.NET, fungsi, dan cara kerjanya.
Sebelum mempelajari materi ini,
pastikan Anda sudah menginstall
Visual Studio Code / Visual Studio
dan juga .NET Core SDK di
komputer Anda.
PEMBAHASAN
I. Apa Itu .NET, Fungsi, Dan Cara Kerjanya
Materi kita kali ini adalah tentang apa itu .NET, fungsi, dan cara kerjanya. Sebelum
mempelajari materi ini, pastikan Anda sudah menginstall Visual Studio Code atau Visual
Studio dan juga .NET Core SDK di komputer Anda.

1.1. Apa Itu Framework?


Coba bayangkan jika Anda sedang bekerja sebagai tukang kayu di sebuah
pabrik furniture.

Bekerja di pabrik furniture pastinya membutuhkan sebuah kerangka kerja yang


harus diikuti oleh semua pekerja agar pekerjaan menjadi lebih efisien dan menghasilkan
produk yang sesuai (menghasilkan berbagai produk furniture). Tentunya kerangka kerja
dari sebuah pabrik furniture adalah bagaimana menjadikan potongan balok kayu
menjadi beberapa produk furniture seperti meja, kursi, lemari, dan lain-lain.

Untuk memudahkan Anda mengikuti kerangka kerja yang diberikan, Anda juga
dibekali dengan toolbox yang berisi berbagai peralatan seperti gergaji, palu, paku,
meteran dan lain-lain. Selain itu, Anda juga diminta untuk mengerjakan pekerjaan Anda
di lingkungan kerja yang juga sudah disediakan, yaitu di dalam pabrik/workshop.

Pada suatu saat, Anda diminta untuk membuat sebuah meja makan, sementara
teman Anda diminta untuk membuat kursi. Ketika Anda membuat meja makan tersebut,
Anda bisa menggunakan peralatan yang telah disediakan di dalam toolbox. Begitu pula
teman Anda, dia juga bisa menggunakan peralatan yang sama untuk membuat sebuah
kursi.

Anda tau, meja dan kursi memang dua jenis barang yang berbeda. Namun untuk
membuat keduanya, ada beberapa pekerjaan yang umum dilakukan, yaitu menggergaji,
memaku, dan mengukur. Maka dari itu, Anda dan teman Anda bisa memanfaatkan set
peralatan yang sama untuk dua pekerjaan yang menghasilkan produk berbeda. Namun,
dengan peralatan dan lingkungan kerja yang diberikan di dalam kerangka kerja sebuah
pabrik furniture, apakah Anda juga bisa membuat sebuah pesawat terbang? Tentunya
tidak, bukan?

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


2 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
Dengan mengacu pada analogi di atas, mari kita pelajari apa itu .NET yang merupakan
kerangka kerja yang diberikan oleh Microsoft untuk mempermudah hidup kita sebagai
seorang software developer.

1.2. Apa itu .NET?


Dalam dunia pengembangan software, sebuah framework merupakan sebuah
platform yang menyediakan segala sesuatu yang dibutuhkan untuk mengembangkan
sebuah aplikasi, mulai dari proses penulisan kode program, kompilasi, sampai dengan
proses eksekusinya. Seperti halnya sebuah kerangka yang membentuk sekaligus
membatasi suatu bentuk ruang, maka jenis aplikasi apa saja yang bisa kita kembangkan,
nantinya juga akan terbatas tergantung dari implementasi .NET yang kita pilih.

Kembali ke analogi pabrik furniture di atas, menggunakan kerangka kerja di sebuah


pabrik furniture juga memberi kita batasan. Kita tidak bisa membuat sesuatu selain
produk furniture, bukan?

Begitu pula, ketika kita sudah memilih salah satu dari beberapa implementasi .NET,
konsekuensinya kita tidak bisa membuat aplikasi di luar kerangka kerja dari
implementasi tersebut.

1.3. Macam-Macam Implementasi .NET


Pada akhir tahun 2000, Microsoft merilis generasi pertama dari .NET Framework,
yaitu .NET 1.0.

Sampai sekarang, .NET Framework sendiri bertujuan untuk menjadi kerangka kerja
untuk pengembangan aplikasi yang menargetkan platform Windows (aplikasi yang
hanya bisa dijalankan di Sistem Operasi Windows), seperti WPF (Windows Presentation
Foundation), UWP (Universal Windows Platform), Windows Form, dan ASP.NET
(Aplikasi berbasis web).

Dengan menggunakan .NET Framework sebagai kerangka kerja, maka kita hanya bisa
mengembangkan aplikasi yang menargetkan platform Windows saja. Kita tidak bisa
menggunakan .NET Framework untuk mengembangkan aplikasi di Linux atau Mac.

Untuk mengatasi itu, di akhir tahun 2014, Microsoft kembali merilis sebuah implementasi
.NET yang bisa digunakan sebagai kerangka kerja untuk mengembangkan aplikasi yang

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


3 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
menargetkan berbagai macam platform seperti Windows, Linux, dan Mac. Implementasi
.NET ini kemudian dikenal sebagai .NET Core.

Tidak berhenti di situ, pada awal tahun 2016, Microsoft kembali mengumumkan
bahwa Mono Project yang sebelumnya telah dikembangkan oleh
para engineer di Microsoft, kini menjadi bagian dari .NET Foundation. Pengumuman ini
tidak lama berselang dari proses finalisasi akuisisi terhadap Xamarin di bulan Maret
2016.

Sejak itu, dengan menggunakan Mono for Xamarin sebagai kerangka kerja, kita bisa
mengembangkan aplikasi native untuk Android dan iOS dengan kode program dari
bahasa pemrograman yang sama (C# adalah bahasa pemrograman yang umum
digunakan).

1.4. Komponen-Komponen .NET


Pada saat bekerja membuat furniture, Anda disediakan linkungan kerja dan berbagai
peralatan yang memudahkan Anda bekerja.

Bagaimana dengan .NET? Apa saja komponen-komponen .NET yang bisa membuat
pekerjaan kita sebagai software developer menjadi lebih mudah?

.NET memiliki dua komponen utama, yaitu sebuah mesin virtual bernama Common
Language Runtime (CLR) dan juga kumpulan pustaka (toolbox) bernama Base Class
Library (BCL).

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


4 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
1.4.1. Base Class Library (BCL)

BCL ini bisa kita bayangkan seperti toolbox yang berisi bermacam-macam peralatan di
pabrik furniture.

Ketika kita perlu memotong papan kayu, kita tinggal memakai gergaji yang sudah
disediakan di dalam toolbox. Kita tidak perlu membuat gergajinya terlebih dulu agar bisa
memotong papan kayu, bukan?

Kebayang kan kalau setiap pekerja di pabrik tersebut harus membuat gergajinya terlebih
dulu?

Begitu pula ketika kita ingin mengembangkan sebuah aplikasi, .NET telah menyediakan
berbagai peralatan untuk melakukan pekerjaan-pekerjaan yang umum seperti
menampilkan tulisan di layar, menulis atau membaca file, melakukan HTTP request, dan
lain-lain.

1.4.2. Common Language Runtime (CLR)

CLR merupakan sebuah mesin virtual yang menyediakan runtime environment untuk
aplikasi .NET.

Runtime environment sendiri adalah lingkungan di mana sebuah aplikasi dijalankan.


Ketika sebuah aplikasi dijalankan, maka aplikasi tersebut bisa dikatakan berada pada
kondisi runtime. Pada saat sebuah aplikasi berada pada kondisi runtime inilah “sihir” dari
CLR akan mengambil perannya.

CLR sendiri memiliki beberapa komponen yang memiliki tugasnya masing-masing,


antara lain:

Garbage Collector (GC). Fungsi dari GC adalah untuk mengelola siklus hidup data-data
pada sebuah aplikasi yang dialokasikan di memori heap (Alokasi memori akan kita
pelajari di materi yang lain). Dengan adanya GC, kita sebagai developer tidak perlu
terlalu pusing memikirkan bagaimana membebaskan sebuah memori dari data yang
sudah tidak lagi digunakan di dalam sebuah aplikasi. Ini adalah kemewahan yang tidak
akan kita dapatkan ketika mengembangkan aplikasi dengan bahasa pemrograman yang
tidak compliant dengan .NET, seperti C dan C++. (Catatan: C++.NET adalah versi .NET
compliant dari C++ sehingga bisa dijalankan di platform .NET).

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


5 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
Just-In-Time Compiler (JIT). JIT adalah ujung tombak dari CLR yang membuat sebuah
aplikasi .NET bisa dijalankan oleh CPU. Setelah ini, kita akan membahas bagaimana JIT
melakukan tugasnya.

1.5. Apa Yang Dimaksud Dengan Common Language?


Tujuan utama dari .NET adalah untuk mendukung integrasi bahasa pemrograman agar
sebuah aplikasi yang dijalankan di platform .NET bisa ditulis dengan bahasa
pemrograman apapun. Lebih jauh lagi, sebuah aplikasi atau class library yang ditulis
dengan bahasa pemrograman yang berbeda harus mampu berinteraksi dan memahami
satu sama lainnya.

Contohnya, apabila kita membuat sebuah class library dengan bahasa pemrograman
VB.NET, maka class library tadi harus bisa digunakan sebagai referensi oleh sebuah
aplikasi yang ditulis dengan bahasa pemrograman C#.

Namun, bukankah dua bahasa pemrograman berbeda biasanya memiliki sistem tipe
data yang berbeda-beda pula? Misalnya, data dengan tipe bilangan bulat dideklarasikan
sebagai int di C#, sedangkan di VB.NET dideklarasikan sebagai integer.

Selain itu, aturan sintaksis (aturan penulisan kode program) dari setiap bahasa
pemrograman juga berbeda-beda. Contohnya, C# dan VB.NET menggunakan sintaks
yang berbeda untuk melakukan perulangan dari 0 sampai 9 dan menampilkan hasilnya
ke layar monitor seperti kode program di bawah ini.

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


6 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
Jadi bagaimana mungkin sebuah class library yang ditulis dengan Visual Basic bisa
dikonsumsi/digunakan oleh kode program yang ditulis dengan C#?

Hal ini dimungkinkan dengan adanya Common Type System (CTS) dan Common
Language Spesification (CLS) yang merupakan spesifikasi yang mengatur bagaimana
sebuah kode program seharusnya dikompilasi menjadi satu kode yang sama satu sama
lainnya.

1.5.1. Common Type System (CTS)

CTS bertanggung jawab untuk memahami semua sistem tipe data dari semua bahasa
pemrograman di .NET dan mengkonversikannya ke sebuah format umum (common
format) yang dapat dipahami oleh CLR (maka dari itu disebut Common Language
Runtime, yaitu runtime environment untuk kode program dengan format umum).

Contohnya, int di C# dan integer di VB.NET akan dikonversi menjadi int32 yang
merupakan format umum untuk tipe data bilangan bulat di platform .NET.

1.5.2. Common Language Spesification (CLS)

Sementara itu, CLS bertanggung jawab untuk mengkonversi aturan sintaksis dari
bahasa pemrograman di .NET ke sebuah format sintaksis yang umum (common syntax).
Aturan sintaksis yang bisa dikonversi ke format yang bisa dipahami dan dijalankan oleh
CLR disebut dengan Managed Code atau kode yang dikelola oleh CLR. Sementara
yang tidak bisa menghasilkan format umum disebut dengan Unmanaged
Code. Unamanaged Code ini nantinya dikelola langsung oleh Sistem Operasi di mana
kode program tersebut dijalankan.

Agar sebuah sebuah bahasa pemrograman nantinya bisa dijalankan oleh CLR, maka
bahasa pemrograman tersebut harus mengikuti spesifikasi dari .NET. Bahasa
pemrograman yang bisa dijalankan oleh CLR di platform .NET disebut dengan
.NET compliant. Meskipun ada lebih dari 20 Bahasa pemrograman yang termasuk
.NET compliant, namun yang umum digunakan adalah C#, VB.NET, dan F#.

1.6. Mengenal Intermediate Language


Ketika kita membuat sebuah aplikasi dengan bahasa pemrograman C++, maka kode
program tersebut akan langsung dikompilasi atau dikonversi menjadi kode program yang

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


7 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
dimengerti oleh CPU. Kode program hasil konversi ini disebut dengan kode native atau
bahasa mesin.

Masalahnya adalah ketika kita mengkompilasi sebuah kode program di Sistem Operasi
Windows dengan arsitektur x86 (32 bit), hasil kompilasi kode program tersebut bahkan
tidak bisa dijalankan di Sistem Operasi Windows dengan arsitektur x64 (64 bit).

Mengapa?

Ketika mengkompilasi sebuah kode program, compiler akan menambahkan informasi


seperti, apa arsitektur Sistem Operasi dan Hardware yang digunakan untuk
mengkompilasi kode program tersebut. Sehingga, kode native yang dihasilkan adalah
spesifik untuk arsitektur Sistem Operasi dan hardware tersebut.

Seperti yang sudah kita pelajari sebelumnya, sebuah kode program .NET akan
dikompilasi ke sebuah format umum terlebih dahulu supaya bisa dijalankan dan dikelola
oleh CLR. Kode dengan format umum ini disebut dengan Intermediate Language (IL).

Contohnya, kode program untuk melakukan perulangan dari 0 sampai 9 yang ditulis
dengan bahasa pemrograman C# dan VB.NET sebelumnya, kudauanya akan
menghasilkan kode IL yang identik seperti berikut ini.

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


8 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
Namun yang perlu dipahami adalah, kode IL di atas tidak bisa dimengerti oleh CPU.
Pada dasarnya, CPU hanya memahami kode native atau bahasa mesin saja.

Lalu bagaimana kode IL di atas dapat dipahami dan dijalankan oleh CPU?

Di sini lah peran dari JIT dimulai. JIT-lah yang melakukan “sihir”-nya dengan
mengkonversi kode IL ke kode native atau bahasa mesin sesuai arsitektur Sistem
Operasi dan hardware di mana aplikasi tersebut dijalankan.

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


9 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
1.7. Proses Kompilasi dan Eksesuksi di .NET
Untuk merangkum semua yang sudah kita pelajari di atas, mari kita perhatikan
bagaimana proses kompilasi kode program di .NET dari awal sampai eksekusi di CPU.

Dengan proses kompilasi seperti pada diagram di atas, maka kita tidak perlu lagi
mengkhawatirkan lingkungan (arsitektur OS, hardware) di mana kode program tersebut
dikompilasi dan di mana aplikasi kita dijalankan.

Kode IL sama sekali tidak memuat informasi apapun mengenai lingkungan di mana
sebuah kode program dikompilasi (platform agnostic).

Nantinya pada saat runtime, JIT lah yang bertugas mengenali lingkungan di mana
sebuah aplikasi .NET dijalankan. Lalu, JIT akan menambahkan informasi tersebut ke
dalam kode native atau bahasa mesin yang dia hasilkan.

1.8. Penutup
• .NET merupakan sebuah platform yang digunakan sebagai kerangka kerja untuk
mengembangkan sebuah aplikasi. Dengan menggunakan .NET sebagai
kerangka kerja, kita dibekali dengan kumpulan Base Class Library dan juga
sebuah mesin virtual bernama CLR.

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


10 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
• Pada saat sebuah aplikasi berada pada kondisi runtime, dengan GC dan JIT,
CLR mengambil peran penting untuk mengelola proses eksekusi aplikasi
tersebut.

• CLS dan CTS memungkinkan berbagai bahasa pemrograman untuk digunakan


di platform .NET. Selain itu, CLS dan CTS juga mendukung terwujudnya
interoperabilitas antar bahasa pemrograman. Hal itu dikarenakan kompilasi dari
setiap bahasa pemrograman menghasilkan format kode yang sama yaitu kode
IL.

• Menggunakan .NET sebagai platform, membuat kita bisa mengkompilasi kode


program dan menjalankan sebuah aplikasi di platform atau arsitektur Sistem
Operasi manapun.

II. Apa Itu Namespace Dalam Pemrograman C#?


Setelah kita bersama-sama membedah anatomi program sederhana bahasa C# di
materi sebelumnya, pada materi kali ini, kita akan lebih dalam lagi mempelajari tentang
apa itu namespace di C#.

Setelah selesai mempelajari materi ini, Anda akan lebih memahami apa itu namespace,
apa fungsinya, dan bagaimana mendefinisikannya di C#.

2.1. Apa itu Namespace?


Sebelum menjawab apa itu namespace, coba bayangkan Anda sedang membuat
sebuah simulator atau game bertema transportasi.

Kira-kira nantinya apa saja objek yang ingin Anda hadirkan di aplikasi tersebut? Ya,
tentunya Anda membutuhkan berbagai jenis sarana transportasi, seperti mobil, motor,
sepeda, kapal, kereta api, pesawat terbang, dan lain-lain. Selain itu, Anda ternyata juga
memerlukan berbagai jenis bangunan terminal, seperti bandar udara, pelabuhan,
stasiun kereta, terminal bus, dan lain-lain.

Lalu Anda berpikir untuk mengelompokkan objek-objek tersebut sesuai dengan


kategorinya. Mobil, motor, sepeda, kapal, kereta api, dan pesawat udara Anda
kelompokkan ke dalam kategori Moda Transportasi. Lalu bandar udara, pelabuhan,
stasiun kereta, dan terminal bus Anda kelompokkan ke dalam kategori Bangunan
Terminal.

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


11 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
Dari sini, kemudian Anda bisa membuat dua buah class library dari dua kategori di atas.
Yaitu, class library yang berisi blueprint dari objek-objek yang termasuk dalam kategori
“Moda Transportasi” dan objek-objek yang termasuk dalam kategori “Bangunan
Terminal”.

Dalam pemrograman C#, identifier (pengenal) untuk pengkategorian ini,


yaitu ModaTransportasi dan BangunanTerminal disebut dengan namespace.

2.2. Apa Fungsi Dari Namespace?


• .NET menggunakan namespace sebagai cara untuk memisahkan file-file class
kedalam kategori yang terkait. Selain itu, penggunaan namespace juga bisa
membantu menghindari bentroknya penamaan dalam aplikasi yang mungkin
berisi class-class dengan nama yang sama.

• Dengan memisah-misahkan class ke dalam kategori yang terkait seperti ini, kode
program yang Anda buat nantinya akan lebih rapi dan terstruktur. Selain itu,
ketika Anda dan tim Anda diberi class library dengan namespace
“ModaTransportasi”, Anda atau tim Anda bisa berekspektasi bahwa class
library tersebut berisi blueprint dari objek-objek moda transportasi yang
dibutuhkan.

2.3. Mendefinisikan Namespace di C#


Untuk mendefinisikan sebuah namespace, kita bisa menggunakan kata
kunci namespace seperti berikut ini:

namespace Nama-Namespace

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


12 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
{

//kode program di dalam sebuah namespace

Namun demikian, pada saat Anda membuat sebuah project baru di Visual Studio Code
dengan dotnet new console, Anda akan diberi struktur default dari bahasa pemrograman
C# seperti berikut ini:

Pada kode program di atas, BelajarPemrogramanCSharp adalah identifier (pengenal)


atau nama dari namespace-nya. Pada saat membuat aplikasi .NET Core di Visual
Studio Code, nama namespace biasanya akan didefinisikan secara otomatis sesuai
dengan nama folder di mana program kita dibuat dengan perintah dotnet new.

2.4. Menggunakan Sebuah Member Di Dalam Namespace Dengan


Kata Kunci ‘using’
Perhatikan kembali potongan kode program sebelumnya. Untuk menggunakan
sebuah member di dalam sebuah namespace, kita bisa menggunakan kata
kunci using seperti berikut ini:

using System;

System sendiri adalah nama namespace yang tersedia di dalam base class library dari
.NET Core. Setelah mengimpor namespace yang kita inginkan, selanjutnya kita bisa
memanggil seluruh member yang terdapat di dalam namespace System seperti baris
kode program berikut ini:

Console.WriteLine("Hello World!");

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


13 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
Method WriteLine di atas adalah member dari class bernama Console yang
merupakan member dari namespace System. Fungsi dari method tersebut adalah
untuk menampilkan teks ke layar console.

Tanpa mengimpor namaspace System, maka Anda tidak bisa mengakses


method WriteLine di atas.

Namun sebenarnya Anda bisa memanggil sebuah member di dalam namespace tanpa
harus menggunakan kata kunci using. Caranya dengan memanggil sebuah member
secara eksplisit seperti berikut ini:

System.Console.WriteLine("Hello World!");

2.5. Penutup
• Di C#, namespace digunakan untuk memisahkan file-file class sesuai dengan
kategorinya masing-masing.

• Pada saat Anda membuat sebuah aplikasi C# dengan command-line .NET Core,
yaitu dotnet new, nama namespace dari program Anda adalah nama folder di
mana program tersebut dibuat.

• Agar Anda bisa menggunakan member-member pada


sebuah namespace tertentu, Anda perlu mengimpor namespace tersebut
dengan menggunakan kata kunci using.

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


14 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id
DAFTAR PUSTAKA

1. Nandiwardhana, Dian. 2018. Pemrograman C# Tingkat Pemula. MahirKoding.ID


2. Martin C, Robert. 2009. Clean Code: A Handbook of Agile Software
Craftmanship. Boston: Prentice Hall.
3. Troelsen, Andrew dan Philip Japiske. 2017. Pro C#7: With .NET and .NET Core.
California: Apress.
4. Skeet, Jon. 2019. C# in Depth, Fourth Edition. New York: Manning.
5. C# Guide. (n.d.). MSDN. https://docs.microsoft.com/en-us/dotnet/csharp/
6. N. A. M. Nordin, Z. A. Zaharudin, M. A. Maasar and N. A. Nordin, "Finding
shortest path of the ambulance routing: Interface of A∗ algorithm using C#
programming," 2012 IEEE Symposium on Humanities, Science and Engineering
Research, Kuala Lumpur, 2012, pp. 1569-1573, doi:
10.1109/SHUSER.2012.6268841.
7. Sharp, J. H., & Schultz, L. A. (2013). An exploratory study of the use of video as
an instructional tool in an introductory C# programming course. Information
Systems Education Journal, 11(6), 33.
8. Corral, J. M. R., Balcells, A. C., Estévez, A. M., Moreno, G. J., & Ramos, M. J. F.
(2014). A game-based approach to the teaching of object-oriented programming
languages. Computers & Education, 73, 83-92.
9. Kumar, A. N. (2013, October). Using problets for problem-solving exercises in
introductory C++/Java/C# courses. In 2013 IEEE Frontiers in Education
Conference (FIE) (pp. 9-10). IEEE.
10. Okur, S., Hartveld, D. L., Dig, D., & Deursen, A. V. (2014, May). A study and
toolkit for asynchronous programming in C#. In Proceedings of the 36th
International Conference on Software Engineering (pp. 1117-1127).

2020 ALGORITMA DAN PEMROGRAMAN Pusat Bahan Ajar dan eLearning


15 Riad Sahara, S.SI., MT - 082110292017 http://www.undira.ac.id

Anda mungkin juga menyukai