Dünya 'nın En Büyük Yalanı : C Dili Basic 'den Daha Zor!

Başlatan mavikaplan, 02 Ağustos 2012, 11:38:07

erkan614

Alıntı yapılan: OG - 02 Ağustos 2012, 16:00:00
Tam Anlayamadım,

wdt on yap delayms 1500 de reset atsın.

karışık birşey değil pic reset atıcak kendine wdt ile

bahsettiğiniz şekilde reset atmaz çünkü delay 1500 komutu koda dönüşürken içine clr wdt eklenir öteki türlü wdt on iken sn sürelerinde bekleme yapamazdık

OG

proton da clrwdt eklemez, kullanıcıya bırakır,

pbp da ise ekler.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

ULAGA

Öncelikle bu tartışmanın sebebini iyi bilmek gerekir.
Tartışmanın sebebi iyi bilinmediği için konu tamamen farklı yerlere gitmiş.
Forumlarda (programlama dünyasında), yıllardır C dilinin Basic dilinden daha zor olduğu denmesinin sebebi;
C dilininin sözdiziminin (syntax), Basic dilininin sözdizimininden (syntax) daha zor olmasıdır.
Ben programcılığa ilk olarak QBasic ile başladım, DOS'ta.
Sonrasında C++'a geçtim, yine DOS'ta.
(C++'a geçtiğimde, sözdizimine (syntax) lanet okumuştum.)
Ondan sonra VBasic'e geçtim.
Sonrasında da Delphi'ye (yani Pascal'a).
Delphi ile 3-4 yıl yazılım geliştirdim.
Son olarak da şuanda Visual C# ile kurumsal yazılım geliştiriyorum.
Popüler olan bir çok dilin sözdizimini (syntax) tatmış bulunmaktayım.
Diller seviye olarak ayrılabilir.
Alçak Seviyeli, Orta Seviyeli, Yüksek Seviyeli diye.
Dillerin, her zaman için seviyesi alçaldıkça öğrenmesi zorlaşır.
Bunun aksini iddaa eden bir programcı var ise onun aklından şüphe ederim.
Keza sözdizimi gibi C dili, Basic dilinden daha alt seviyede olduğu için öğrenilmesi biraz daha zordur.
Ancak alışkanlık diye istisnai bir durum daha vardır.
Bana şimdi Visual C#'da geliştirdiğim yazılımı, Visual Basic'de yaz deseler elbette epey bir zorlanırım.
Ancak geçiririm, zira önemli olan algoritmayı, yazılımın yapısını biliyorum.
Her dile çevirebilirim.
Bir yazılımı her dille yazabilirsiniz.
VBasic ile de olur, Delphi ile de olur, C# ile de olur.
ActiveX geliştirmelerinde olsun, Driver geliştirmelerinde olsun, neden çoğunlukla C++ kullanıldığını, üşenmeyin de bir araştırın.
Aksine örnek olarak, Windows 7'nin bazı kısımları da Visual Basic .NET ile yazıldı.

Ancak tekrarlıyorum, sen oturup bir yazılım geliştirmek istiyorsan, dilden önce o yazılımın neler yapabileceklerini, parametrelerini belirle.
Önünüzde algoritma, proje yapısı olmadığı sürece yaptığınız bütün yazılımlar, uyduruk yazılım olur, hangi dili kullanmış olursanız olun.

İnanın ki yazılacak daha çok şey var.
Ancak önemli olan bu tartışmanın neden olduğunu anlamaktan geçiyor.

Son olarak, bana gelip birisi programcılığa başlayamak istiyorum dese;
Ona kesinlikle hangi seviyesi olursa olsun, C dilinden başlamasını tavsiye ederim.
İsteyenler Basic'i önerebilir.
Bu önerme farklılıklarının, yazılımcılar için kötülük olduğunu düşünmüyorum

Erdem

Alıntı yapılan: The Gariban - 02 Ağustos 2012, 13:25:45
Sabit bir hacim olsun.Örneğin 20  lik kontayner e boyutları belli kutularımızı yükleyeceğiz.
Patron diyorki :
Bu TIR a mallarımı öyle hesaplaki TIR buradan o farklı kolilere göre en yüksek tutardan gitsin.
Yani farklı boyutlarda kutular var bunların fiyatları belli ve üzerinde yazan seri no gibi kocaman kodlar var.
Bana hangi kodlu kutuları hangi sıra ile dizmeliyimki en yüksek tutarı program dizsin
Bu programı yazacak kişi varmı?

Yazalım bakalım  :D
import std.random;
import std.stdio;

struct Kutu
{
    int no;
    int fiyat;

    int opCmp(const ref Kutu sağdaki) const
    {
        return (fiyat == sağdaki.fiyat
                ? fiyat - sağdaki.fiyat
                : sağdaki.fiyat - fiyat);
    }
}


void main()
{
    Kutu[] konteyner;

    foreach (i; 0 .. 20) {
        konteyner ~= Kutu(i, uniform(0,100));
    }

    writeln("Kutular :");

    foreach (eleman; konteyner) {
        writeln(eleman);
    }

    writeln("Sıralandıktan sonra :");

    konteyner.sort;

    foreach (eleman; konteyner) {
        writeln(eleman);
    }
}

The Gariban

Erdem
sen konuyu anladınmı?
Benim demek istediğim
Bu kodla şimdi
Atıyorum 250 adet değişik KOLI KODU,EN(cm),BOY(Cm),YÜKSEKLİK(cm),Fiyatı(TL) bilgisi eklendiğinde.
TIR i en pahalıya gelecek şekilde optimum doldurup çıktı olarak her kolinin TIR da nereye konulması gerektiğinimi gösteriyor ?
Mümkünse 30-40 kayıtlık bir örnek yapılabilecek bir exe yazarsan denemiş olurum.




erkan614

Alıntı yapılan: OG - 03 Ağustos 2012, 10:35:06
proton da clrwdt eklemez, kullanıcıya bırakır,

pbp da ise ekler.

demekki sorun dahaçok derleyici kısmındaymış hangi derleyiciyi kullanıyorsanız o ölçüde işler değişir
css c de proje yapmak pbp den zor değil hatta nerdeyse ayni
ama C de daha farklı derleyiciler kullanırsak işler zorlaşıyor
aslında basic dede sorun şu C deki güçlü derleyiciler tarzında bir derleyicisi yok hep basit tip en karışığı proton swordfish

Sadede gelirsek konuyu baslatan ve yazı yazazan herkes haklı
C hiçde zor bi dil değil basic gibi kolay
eksik olan kısım çoğu c derleyicilerinde program yazmak biraz daha karışık ve datasheet gerektiriyor
basicde böyle derleyiciler olmadığından anında kod yazma işine girebiliyosunuz kolaylığı burda
e bundan sorada üşenme ve nası olsa basicdede yazıyorum diye C cok zor yalanı ortaya atılıyor

Erdem

Alıntı yapılan: The Gariban - 03 Ağustos 2012, 11:33:53
Bu kodla şimdi
Atıyorum 250 adet değişik KOLI KODU,EN(cm),BOY(Cm),YÜKSEKLİK(cm),Fiyatı(TL) bilgisi eklendiğinde.
TIR i en pahalıya gelecek şekilde optimum doldurup çıktı olarak her kolinin TIR da nereye konulması gerektiğinimi gösteriyor ?
Şimdi ilk mesaja göre kutuların fiyat bilgisine göre kutuları sıralıyorduk. Burada hacim nereden çıktı. Ya da hacim hesabı yapılacaksa programın nasıl çalışması gerektiğini bir örnekle göstermelisiniz.

Böyle derleyici kurmaya, yeni bir şeyler denemeye pek meraklı bir millet değiliz. O yüzden kolaylık olsun. İlk yaptığım örnek buydu.

The Gariban

#67
Alıntı yapılan: Erdem  - 03 Ağustos 2012, 11:52:47
Şimdi ilk mesaja göre kutuların fiyat bilgisine göre kutuları sıralıyorduk. Burada hacim nereden çıktı. Ya da hacim hesabı yapılacaksa programın nasıl çalışması gerektiğini bir örnekle göstermelisiniz.

Böyle derleyici kurmaya, yeni bir şeyler denemeye pek meraklı bir millet değiliz. O yüzden kolaylık olsun. İlk yaptığım örnek buydu.
Erdemcim kuyuya taşı atan benim  :)
Çıkarırım diyende sensin  :)
Ayrıca mesajlarımda eklenen bir cümle ilki ile 2 ci arasında bir fark yok.

Erdem

Anlıyorum ama burada sorun sizin ne sorduğunuzun yeteri kadar açık anlaşılamamasından kaynaklanıyor.

Programlama yarışmalarında bile girdi ve çıktıyı verirler. Siz programınızı ona göre yazarsınız.

The Gariban

#69
Alıntı yapılan: Erdem  - 03 Ağustos 2012, 12:09:04
Anlıyorum ama burada sorun sizin ne sorduğunuzun yeteri kadar açık anlaşılamamasından kaynaklanıyor.

Programlama yarışmalarında bile girdi ve çıktıyı verirler. Siz programınızı ona göre yazarsınız.
Sen kafana göre ver değerleri salla gitsin,
Unutmayın ki programın esnek olmasıda programın artılarındandır

mesaj birleştirme:: 03 Ağustos 2012, 14:09:52

Ben bunun 3 boyutlu olanını istiyorum
http://www.notasyon.com/KopEksper.htm
(2 Boyutlusunu bayağı ucuza satıyorlarmış 700 lira gibi birşey)

muratyamak10

arkadaşlar diller konusuna bir giriş yapalım isterseniz.bilgisayar dilleri şöyle sınıflandırılabilir bir insana yakın bilgisayara uzak bilgisayara yakın insana uzak.bilgisayar makine dili denilen 1 ve 0 ları yorumlar fakat bu dille program yazmak oldukça zordur ve bu yüzden assembly dili geliştirilmiştir bu dilden bir örnek verelim
.yaz db 'murat yamak','$'
.code
mov ah,09h
lea   dx,yaz
int   21h
ret
birde orta seviyeli c dili vardır
#include <stdio.h>
main()
{
printf("murat yamak");
}
birde yüksek seviyeli dil grubundan olan pascalı görelim
begin
writeln('murat yamak');
end.
yani kullanmak istediğiniz dil sizin programlama amacınıza yöneliktir.eğer daha hızlı çalışan bir program yapmak isterseniz donanımı ,tanıma isterseniz assembly ve c dili uygundur,eğer daha komplike programlar yazmak isterseniz bunu için basic ve pascal,java uygundur,yani hiçbir dil diğerine üstün değildir yani hepsinin kullanım yerleri farklıdır.

muratyamak10

gerbay hocam nacizane bilgi vermek istedim tabi siz daha iyi bilirsiniz