Politecnico di Torino C Dersi

Politecnico di Torino C Dersi

Politecnico di Torino öğrencileri için Programming Techniques dersindeki güncel ders kodu, resmî materyaller ve sınav duyurularına göre planlanan C programlama desteği.

Harun BüyükçolakHarun Büyükçolak, Full Stack Developer
Politecnico di Torino C Dersi

Politecnico di Torino C Dersi

Politecnico di Torino'nun Bilgisayar Mühendisliği lisans programında yer alan Programming Techniques dersi, öğrencilere ilk yıl verilen ve programlamaya giriş sürecinde Python'dan sonra ikinci derstir. Programlama teknikleri dersi kapsamında C yazılım dili gerçek hayat yazılım problemlerinin çözümünde bir araç olarak kullanılmaktadır. C dili ile çözülebilecek basit problemler tanımlanmakta ve uygun veri yapıları ve algoritmik yapılar seçmek için stratejiler sunulmaktadır. Ayrıca, hesaplama açısından daha verimli çözümler geliştirebilmek amacıyla temel düzeyde karmaşıklık analizi(complexity analysis) kavramları da tanıtılmaktadır.

Bizim burada sizlere sunduğumuz C programlama dili dersi de Politecnico di Torino'nun Programlama Teknikleri dersini geçebilmenize yardımcı olacak şekilde hazırlanmıştır. Bu dersimizin içeriğini Pragramlama Teknikleri (Programming Techniques) dersi müfredatı ile uyumlu olarak hazırladık ve ders için gerekli olan temel bilgileri ve becerileri geliştirmenize destek olacak şekilde tasarladık. Yine dersimizin içeriğinde konuyu anlamanızı kolaylaştıracak örnekler ve uygulamalar bulunmaktadır. Bu dersimizi alarak C programlama dilini etkili bir şekilde öğrenebilir ve Politecnico di Torino'nun Programlama Teknikleri dersine sistemli biçimde hazırlanabilirsiniz.

Dersin Genel Amacı Nedir?

Bu dersin amacı, Politecnico di Torino'nun Bilgisayar Mühendisliği öğrencilerine verilen Programming Techniques dersinin gerektirdiği becerileri geliştirmelerine destek olmaktır. Bu amaca yönelik olarak, C programlama dilini temel seviyede öğretmek ve C programlama dilinin temel kavramlarını ve özelliklerini anlamalarını sağlamaktır. Tabi bu ders sadece C den ibaret değildir. Dersin kapsamında ayrıca algoritma geliştirme ve karmaşıklık analizi gibi konular da yer almaktadır. Bunlarda tamamen Programming Techniques dersi ile uyumlu olarak hazırlanmıştır. Bu dersi hazırlarken, Politecnico di Torino'nun Programlama Teknikleri dersinin konu anlatımlarını, soru çözümlerini ve eski sınav sorularını ciddi anlamda inceledik ve dersimizi bu doğrultuda hazırladık.

Bu Ders Kimlere Hitap Ediyor?

Bu dersimizin hedef kitlesi, sadece Politecnico di Torino'nun Bilgisayar Mühendisliği bölümünde okuyan ve Programming Techniques (Programlama Teknikleri) dersini alan birinci sınıf öğrencileridir. Dersimizin içeriği öğrencinin güncel Programming Techniques materyalleri ve sınav duyuruları kontrol edilerek ihtiyaçlarına göre uyarlanır.

Eğer başka bir üniversitede okuyor ve benzer müfredatta bir ders alıyorsanız, bu ders size de hitap edebilir. Bizimle iletişime geçtiğiniz takdirde ders içeriğini sizin ihtiyaçlarınıza göre özelleştirebiliriz.

Dersin Müfredatında Hangi Konular Var?

Bu ders, C programlama dilinin temel kavramlarını ve özelliklerini adım-adım işleyerek öğrencilerin C programlama dilini etkili bir şekilde kullanmalarını sağlamayı amaçlamaktadır. Dersin genel kapsamı aşağıdaki konuları içermektedir:

Temel Mimariler ve Mantık Kavramları (Basic notions of architecture and logic)

  • CPU ve merkezi bellek mimarisi ( CPU and central memory architecture)
  • Boolean cebiri ve mantıksal fonksiyonlar (Boolean algebra and logical functions)

Problem Çözme (Problem-solving)

  • Temel karmaşıklık analizi ve yinelemeli sıralama algoritmaları hakkında bilgi (Knowledge of elementary notions of complexity analysis and of iterative sorting algorithms)
  • Problem çözmenin temel kavramları ve algoritmik stratejiler (Basic notions of problem solving and algorithmic strategies)
  • Yinelemeli sıralama algoritmaları bilgisi (Knowledge of iterative sorting algorithms)
  • Bir algoritmik sorunun formülasyonundan çözümüne geçme, problem türünün tanınması ve uygun veri yapıları ile çözüm algoritmalarının seçilmesi
  • Iteratif problemleri çözme, skaler veri ya da sıralı ve sırasız veri koleksiyonları üzerinde işlem yapma

C Dili (C language)

  • Skaler veri tipleri(Scalar/Primitive Data Types)
  • Standart veri Giriş/Çıkış ve metin dosyaları üzerinde temel giriş/çıkış işlemleri (Elementary input / output on standard I/O and text files,)
  • İteratif ve koşullu yapılar (Iterative and conditional constructs)
  • Fonksiyonlar (Use of functions as sub-programs)
  • Yapılandırılmış veri türleri (Structured data types)
  • Struct (struct)
  • Diziler ve matrisler (Arrays and matrices)
  • Karakter dizilerinin manipülasyonu (Manipulation of strings of characters)
  • Verilere referans olarak işaretçi veri türü ve dizilerin/matrislerin dinamik tahsisi için kullanımı, ayrıca C işlevlerine referansla/işaretçiyle parametre geçirme yöntemi olarak kullanımı (Knowledge of the pointer data type for reference to data and for dynamic allocation of)
  • Hem skaler hem de struct türü ve/veya dizi veya matris biçiminde birleştirilmiş verileri manipüle edebilen yinelemeli algoritmalar geliştirme yeteneği
  • Bir sorunu alt sorunlara bölmeye dayalı olarak, işlevlerin etkin kullanımıyla modüler programlar oluşturma yeteneği
  • Programlama yardım araçlarını kullanma yeteneği

Dersin en temel düzeyde konuları bunlar olmakla beraber, ders içeriği öğrencilerin ihtiyaçlarına göre özelleştirilmektedir. Öğrencilerin daha fazla pratik yapmalarını sağlamak amacıyla ders içeriğine ek konular eklenebilmektedir veya ders içeriğinden bazı konular çıkarılabilmektedir.

Ders Nasıl İşleniyor?

Bu dersi işlerken takip ettiğimiz bir takım prensiplerimiz var. Bunları aşağıda sıralayacak olursak:

  • C (Programming Techniques) dersimizi, özel ders şeklinde ya da tercih edilmesi halinde grup dersi olarak işleyebiliyoruz.
  • Derslerimizin zamanı, süresi ve sıklığı öğrencilerimizin ihtiyaçlarına ve taleplerine göre değişiyor. Dersleri hafta içi ya da hafta sonu, gündüz ya da gece fark etmeksizin İtalya'nın saat dilimine uygun olarak işleyebiliyoruz. Derslerimiz genelde 2 x 40dk'lık seanslar şeklinde oluyor. Haftalık ders miktarı da ortalama 2 ya da 3 oluyor. Toplamda 15-20 arası ders yaparak dersi tamamlayabiliyoruz. Ders miktarı öğrencinin seviyesine göre daha az veya daha fazla olabiliyor.
  • Resmî 2026/27 kılavuzunda açık veya çoktan seçmeli teori soruları; bir programdaki eksikleri tamamlama, hataları düzeltme veya çalışmasını simüle etme; bir problem için veri yapısı ile algoritmayı belirleyip C ile uygulama gibi görevler tarif edilir. Güncel kapsam ve format, öğrencinin tam kodu, akademik yılı ve grubuna göre doğrulanır. Derste de doğrulanan kapsama yönelik özgün sorularla pratik yapıyoruz.
  • Dersleri online olarak yapıyoruz ve genelde Zoom, Google Meet, Microsoft Teams ya da Skype gibi online platformları kullanıyoruz.
  • Öğrencilerimize derste bolca kod yazabilme imkanı sunuyoruz ve öğrencilerimizi supervise ediyoruz.
  • Öğrencilerimizle "pair programming" tekniği kullanarak da çalışıyoruz.
  • Öğrencilerimize ders dışında bireysel olarak çalışabilmeleri için de sorular veriyoruz. Bu sorular genel olarak Programming Techniques dersinin sınav sorularına benzer sorular oluyor.
  • İnteraktif bir şekilde ders işliyoruz. Bu bağlamda öğrencilerimizin derse katılması için ne gerekiyorsa yapıyoruz.
  • Dosya paylaşımında git ve github gibi üst düzey versiyon kontrol ve dosya paylaşım sistemlerini kullanıyoruz. Böylelikle öğrencilerimizin yazdığı kodları saklamalarını ve gerektiğinde kolaylıkla ulaşabilmelerini sağlıyoruz.

Bu Dersten En İyi Verimi Nasıl Alabilirsiniz?

Bu dersten üst düzey bir verim alabilmeniz için aşağıdaki önerilerimizi dikkate almanız önemlidir:

  • Ders planımıza sadık kalmamız önemli. Kaçırdığımız her bir ders bizim dersi yetiştirmemize engel olacaktır. Bu nedenle planladığımız derslerimizi mümkün mertebe yapmaya özen göstermeliyiz.
  • Sınava hazırlanmayı son günlere bırakmak çok yanlış bir strateji olacaktır. Bu dersin konu miktarı oldukça fazladır ve konularde hiç kolay değildir. Konuları sindirmek için zamana ve tekrara ihtiyacınız olacak.
  • Ders kapsamında size birçok ders materyali sunacağız. Bunları derslerden sonra tekrar etmeniz önemli. Bunun haricinde, bireysel olarak çözmeniz için de size birçok sorular vereceğiz. Bu soruları çözmeniz ve çözemediğiniz de bizlere sormanız oldukça önemli.
  • Derslerde aktif olarak katılım göstermeniz çok önemli. Burada kastımız bol bol soru sormanız ve dersin içeriğini anladığınızdan emin olmanızdır.
  • Kodlama kesinlikle sadece birinden dinleyerek ya da internetten okuyarak öğrenilecek bir disiplin değildir. Muhakkak sizin de kodlama yapmanız gerekmektedir. Özellikle de bir bilgisayar mühendisi adayı olarak bu sizin için daha da önemlidir.

Özel Ders mi, Yoksa Grup Dersi mi Tercih Etmeliyim?

Bu dersi bireysel olarak aldığınız takdirde hızlı bir şekilde amacınıza ulaşabilirsiniz. Ders kaçırma, ders saatini uyduramama, herhangi bir konsepti anlayamama, hocaya soru soramama gibi problemlerle karşılaşmanız mümkün değil. Ayrıca dersi kendi hızınıza göre ilerletebilir ve dersin içeriğini ve süresini kendi ihtiyaçlarınıza ve taleplerinize göre özelleştirebilirsiniz.

Bu dersi grup olarak aldığınızda bireysel olarak daha uygun bir fiyatı olacaktır, ancak beraberinde bazı dezavantajların olacağını da bilmekte fayda var. Grup derslerinde dersin içeriğini ve süresini kendi ihtiyaçlarınıza ve taleplerinize göre özelleştiremezsiniz. Ayrıca, dersi anlamak için daha fazla bireysel çaba sarf etmeniz ve ders kaçırdığınızda ise çoğunlukla kendiniz telafi etmeniz gerekecektir. Bu durumları iyi tartıp karar vermelisiniz. Grup derslerinin review ve pratik yapmaya daha uygun olduğunu söyleyebiliriz.

Bu Dersi Almanın Ne Gibi Avantajları Var?

2026/27 öğretim planında İngilizce Programming Techniques ve İtalyanca Tecniche di programmazione sunumları bulunur. Öğrencinin kayıtlı olduğu dildeki resmî terimleri korurken, zor kavramları Türkçe açıklamalarla netleştiriyoruz. Ders anlatımı öğrencinin ihtiyaçlarına göre İngilizce de yürütülebilir.

İkinci olarak, sizlere bolca sınav örnekleri, ipuçları, geçmiş sınavlar ve soru çözme stratejileri sunuyoruz. Bunları normal şartlarda elde etmeniz oldukça zor. Bizimle çalışarak bu avantajlardan kolaylıkla faydalanabiliyorsunuz.

Üçüncü olarak, size seviyenizi tespit edebilme, sınava ne kadar hazır olduğunuzu anlayabilme imkanı sunuyoruz. Sınava ne kadar hazır olduğunuzu yaptığımız testlerle ölçüyoruz.

Son olarak da, her daim soru sorabileceğin bir hocaya sahip olmuş oluyorsunuz. Bize istediğiniz zaman whatsapp üzerinden ulaşabilir ve takıldığınız noktalarda sorularınızı sorabilirsiniz.

Bu Dersi Alırsam Programming Techniques Dersimi Geçebilecek miyim?

Bu sorunuza kesin geçersiniz diyemeyiz tabi ki, ancak size şunu söyleyebiliriz ki, bu dersi başarıyla tamamladığınız takdirde Programming Techniques dersini geçme şansınız oldukça yüksek olacaktır. Tek seferde geçemeseniz dahi sonraki seferlerde geçebilmek için de elinizde çalışma materyelleriniz olacaktır ve dersten geçene kadar bize sorularınızı sorabileceksiniz.

Polito'nun Programming Techniques(C) Dersini Zor Yapan Şey Ne?

Bu dersi temelde zor hale getiren birkaç etken bulunmaktadır. Bunları aşağıda sıralayacak olursak:

  • Sınav ve dönem içi değerlendirme yapısı akademik yıla ve öğretim grubuna göre değişebilir. Çalışma planı, öğrencinin güncel Portale della Didattica ve Moodle duyuruları doğrulandıktan sonra hazırlanmalıdır.
  • Resmî 2026/27 kılavuzu sınavın teori ve programlama olmak üzere iki bölümden oluştuğunu ve her iki bölümde de yeterlilik gerektiğini belirtir. Bu nedenle teori ile kodlama pratiği birlikte çalışılmalıdır.
  • Sınavda ciddi anlamda ağır bir kodlama sytax'ı kullanıldığını gözlemliyoruz. Python'da bu tür syntax'ları görmeye alışık olmayan öğrencilerin bu syntax'ları anlaması ve kod yazması oldukça zor olabiliyor.
  • C başlı başına zor bir dil. C dilinde kod yazmak, Python'da kod yazmaktan çok daha zor. C dilinde kod yazarken, kodunuzun her satırını ve her satırın ne işe yaradığını çok iyi anlamanız gerekiyor. C dilinde pointers ve memory allocation gibi ağır konular var. Bunları hazmetmek ve uygulamak ciddi bir efor gerektiriyor.
  • Programming Techniques dersi oldukça geniş bir konu yelpazesine sahip. Çoğu zaman öğrencilerin bu konuları yetiştirememesi ve konuları yeterince anlayamaması sıkıntı yaşamalrına neden oluyor.

Bir bilgisayar mühendisi adayı olarak, bu dersi başarıyla geçmenizin sizin için oldukça önemli olduğuna inanıyoruz. C programlama dili bir bilgisayar mühendisine yakışacak düzeyde olgun, performansı yüksek ve kapsamlı bir dildir. Eğer C dilini ve Programming Techniques dersindeki diğer conseptleri öğrenmekte zorlanıyorsanız, bizimle iletişime geçebilirsiniz. Size bu konuda yardımcı olmaktan mutluluk duyarız.

WhatsApp