Pages

29 Aralık 2014 Pazartesi

Program ve yazılım arasındaki fark nedir?

YAZILIM VE PROGRAM

Yazılım bir teknoloji terimidir.Anlamı; Hem bilgisayar sistemini oluşturan donanım parçalarının yönetimini hem de kullanıcıların işlerini yapmak için gerekli olan komutlar topluluğuna yazılım denilmektedir.
Program ise bilgisayarda tanımlı belli bir işi yapmak için bir araya getirilmiş direktiflerin tümüdür. 
Her yazılımda program vardır ama programlar tek başlarına yazılım değillerdir.

Bilgisayar satın alırken dikkat edilmesi gereken özellikler

Bilgisayar alırken dikkat edilmesi gereken en önemli husus bilgisayarın hangi amaç için kullanılacağının bilincinde olmaktır.
İnternetten film indirip indirip izleyecek miyiz? yoksa yüksek sistem gereksinimi olan oyunları oynamak mı istiyoruz? yoksa sadece sosyal ağlarda mı vakit geçireceğiz belirlememiz gerekiyor.

Kullanım amacımıza göre alacağımız laptop şekilleniyor. Sadece film izlemek için bir bilgisayar alıyorsak eğer çok güçlü bir ekran kartına ihtiyacımız yok. Hatta Ultrabooklar da işimizi görebilir. Burada seçim kişinin kendisine ve maalesef bütçesine kalıyor. 


Günümüzde bilgisayar çok geniş bir kullanım yelpazesine sahip bir araç olmuştur

oyun bilgisayarı, performans bilgisayarı, günlük işleri halledebileceğimiz ev bilgisayarları, arşiv bilgisayarları, ofis bilgisayarları.

Bilgisayarın kullanım alanına göre işlemci hızı ve çekirdek sayısı, ram ve ekran kartı miktarı, ekran boyutu, pek çok değişken bulunabilmektedir .

örneğin oyun sever biri bilgisayar alacağı zaman özelliklerine ona göre bakar, ortalama bir oyun bilgisayarının özellikleri şu şekilde sıralanabilir;

4 gb ram
4gb ekran kartı
2.8 çift çekirdek turbo boost işlemci
1tb hard disc
19 inç monitör



ortalama bir oyun bilgisayarının fiyatı 1500-2000 lirayken daha düşük özellikli, örneğin bir ofis bilgisayarının sistem özellikleri ve fiyatı da yarı yarıya düşebilir.



Oyun için dizüstü
 örnekle anlatalım. 
Örnek Laptop1
Örnek Laptop2
Örnek Laptop3
Örnek Laptop4
Örnek Laptop5

Bunlar bize yüksek sistem gereksinimimizi sağlayacak laptoplar. 



Film ve sosyal ağlar için dizüstü
Örnek vererek anlatıcam. 
Örnek Laptop
Bize yüksek bitrate'li (Bitrate bir videonun/görüntünün saniyedeki veri miktarıdır.) 1080p mkv dosyalarını açmamızı sağlayacak, sosyal ağlarda gezerken çok sekmeli olarak işimizi yapabileceğiz. 1000TL'ye yakın da fiyatları var bunların yani film izlemek istiyorsak oyun oynamıyorsak böyle bir bütçe yeterli. Ekranımız 1366*768 piksele sahip bunun full hd yani 1920*1080 piksel olanından istersek fiyatlar 1600 tl dolaylarına çıkıyor. 

Ekran kartı modelleri
Asus N56VZ'deki gt650m ekran kartını ele alalım. Buradaki "6" bize bu ekran kartının serisini ifade eder yani bu kart 6. nesil bir kart. "50" de hangi seviye olduğunu. nVidia'nın artarak giden bir seviye sistemi var. Yani sonu "10" lu bir kart alırsanız bu giriş seviyesi sonu "80"li bir kart alırsanız bu üst seviye bir kart. En sondaki harfin de "M" olması bunun mobil yani taşınabilir cihazlarda kullanılabileceğini gösteriyor. "MX" olan modeller de var onlarda da çekirdek sayısı arttırılarak performans artışına gidilmesi amaçlanıyor. Sonuç gt650m orta seviye bir kart, gt610m giriş seviyesi, gt680m ileri seviye bir kart. 

(Ekran karti bit nedir)Ekran Kartlarındaki bit değeri

Oyun bilgisayarında özellikle laptoplarda dikkat etmemiz gereken en önemli husus ekran kartı. Onu da yukarıda anlattığım şekilde seçiyoruz. 

Oyun Dizüstülerinde İşlemci

Bu konuya çok takılmamanızı öneriyorum önce. Oyun oynarken bizi sınırlayacak olan bileşen ekran kartı. İşlemcimiz ne kadar iyi olsa da ekran kartının takıldığı yerde sistem takılıyor. Bir büyüğümüz "Bilgisayar en yavaş parçası kadar hızlıdır." derdi. Çok ta doğru bir söz. Ekran kartının bizi sınırladığı durumlarda işlemcinin i5 veya i7 olması hiçbir şey fark ettirmiyor. Hatta benim kanaatimce laptoplarda i7 işlemci çok uç noktalarda kullanım amaçları olmadığında gereksiz. İşlemcinin i7 olması bize hem mebla hem de ekstra ağırlık olarak yansıyor. 

American Standard Code for Information Interchange ( ASCII)

ASCII (İngilizceAmerican Standard Code for Information InterchangeTürkçeBilgi Değişimi İçin Amerikan Standart Kodlama SistemiLatin alfabesi üzerine kurulu 7 bitlik bir karakter setidir. İlk kez 1963 yılında ANSI tarafından standart olarak sunulmuştur.
İkilik sistemSekizlik sistemOnluk sistemOn altılık sistemKarakter
010 00000403220
010 00010413321!
010 00100423422"
010 00110433523#
010 01000443624$
010 01010453725%
010 01100463826&
010 01110473927'
010 10000504028(
010 10010514129)
010 1010052422A*
010 1011053432B+
010 1100054442C,
010 1101055452D-
010 1110056462E.
010 1111057472F/
011 000006048300
011 000106149311
011 001006250322
011 001106351333
011 010006452344
011 010106553355
011 011006654366
011 011106755377
011 100007056388
011 100107157399
011 1010072583A[[:]]
011 1011073593B;
011 1100074603C<
011 1101075613D=
011 1110076623E>
011 1111077633F?
İkilik sistemSekizlik sistemOnluk sistemOn altılık sistemKarakter
100 00001006440@
100 00011016541A
100 00101026642B
100 00111036743C
100 01001046844D
100 01011056945E
100 01101067046F
100 01111077147G
100 10001107248H
100 10011117349I
100 1010112744AJ
100 1011113754BK
100 1100114764CL
100 1101115774DM
100 1110116784EN
100 1111117794FO
101 00001208050P
101 00011218151Q
101 00101228252R
101 00111238353S
101 01001248454T
101 01011258555U
101 01101268656V
101 01111278757W
101 10001308858X
101 10011318959Y
101 1010132905AZ
101 1011133915B[
101 1100134925C\
101 1101135935D]
101 1110136945E^
101 1111137955F_
İkilik sistemSekizlik sistemOnluk sistemOn altılık sistemKarakter
110 00001409660`
110 00011419761a
110 00101429862b
110 00111439963c
110 010014410064d
110 010114510165e
110 011014610266f
110 011114710367g
110 100015010468h
110 100115110569i
110 10101521066Aj
110 10111531076Bk
110 11001541086Cl
110 11011551096Dm
110 11101561106En
110 11111571116Fo
111 000016011270p
111 000116111371q
111 001016211472r
111 001116311573s
111 010016411674t
111 010116511775u
111 011016611876v
111 011116711977w
111 100017012078x
111 100117112179y
111 10101721227Az
111 10111731237B{
111 11001741247C|
111 11011751257D}
111 11101761267E~

Bit İle Byte Arasındaki İlişki

Bit sistemi

Bildiğiniz gibi bilgisayar sistemleri 1’lerden ve 0’lardan anlamaktadır. Bu 1 – 0 olayı aslında işlemcide bulunan transistor ün açık ya da kapalı olma durumudur. Genel olarak da mors alfabesi sistemine benzer bir şekilde çalışmaktadır.
Bir dosya kaydedildiği zaman ya da bellekte olduğu zaman bu şekilde 1ler ve 0lar ile yer alır. İşlemcimiz bu bitleri belli parçalar halinde işler bu da sürekli duyduğumuz 32bit – 64bitlik durumdur.
Byte sistemi

Ağırlık, uzunluk ölçülerinin kat sayılarını hatırlayalım. 1cm in: 10 katı 1dm, 100 katı 1mdir. Fakat bu ölçüler 1er artmaktadır. Bitler gruplandığı zaman 2nin üsleri olacak şekilde artmaktadır. Bitleri 10 a en yakın gruplayacağımız değer: 2 ^3 yani 8 dir.
Benzer şekilde bir byte ın 1000 katını alamayacağımızdan 1000 e en yakın 2 üssü 2^10 = 1024 kullanmaktayız.
8 bit = 1 byte

Programlama Dillerinin Sınıflandırılması



Programlama dilleri, temel yaklaşımlarına göre bazı sınıflara ayrılırlar. Buna göre belli başlı programlama dili sınıfları şunlardır:
·         Yordamsal (procedural / imperative) diller: C, Pascal, ...
·         Nesneye dayalı (object based / oriented) diller: Ada, Smalltalk,  ABAP,Avenue...
·         Fonksiyonel (functional) diller: Lisp, Haskell, ...
·         Mantıksal (logic) diller: Prolog, ...


Programlama dillerinin seviyelerine göre sınıflandırılması:

İnsana En Yakın:     Çok yüksek seviyeli programlama dilleri ya da görsel diller (Foxpro, Paradox, access, Vısual Basıc,....)

Yüksek seviyeli programlama dilleri (Pascal, Cobol, Fortran, Basıc,...)

Orta seviyeli programlama dilleri (C, ADA)

Alçak seviyeli programlama dilleri (sembolik makine dilleri)

Bilgisayara en Yakın:  Makine dilleri (Bilgisayarın doğal çalışma dilleri, l ve 0’ ların dizilimlerinden oluşan)

Görsel programlama dilleri program kodunun kısmen yada tamamen görsel biçimde çeşitli araçlar tarafından üretildiği dillerdir. Görselliğin ileri uçlarında program kodu bile bulunmayabilir. Windows sistemlerinde Visual Basic, Access gibi görsel diller yaygın bir biçimde kullanılmaktadır.Çok yüksek seviyeli dillere dekleratif diller de denir. Veritabanlarının yönetimlerinde kullandığımız dilleri bu gruba sokabiliriz. Yüksek seviyeli programlama dilleri daha algoritmik dillerdir. Bu dillerde önce işlerin nasıl yapılacağına ilişkin algoritmalar tasarlanır. Daha sonra bu algoritmalar program koduna çevrilir. Basıc, Pascal, Fortran gibi dilleri bu grup içerisinde ele alabiliriz.

Programlama dillerinin uygulama alanlarına göre sınıflandırılması:

. Bilimsel ve Mühendislik Diller: Bu diller daha çok bilimsel ve mühendislik problemlerinin çözümünde tercih edilirler. PASCAL ve C dillerini , birde geleceği pek parlak olmayan ve hala ısrarla kullanılan 90 canlı, dünyanın ilk yüksek seviyeli dili FORTRAN’ ı buna örnek verebiliriz.
. Veritabanı Programlama Dilleri: Bu diller veritabanlarının genel  olarak  yönetiminde kullanılan dillerdir: DBASE, PARADOX, FOXPRO, SQL.. kişisel bilgisayarlarda yaygın olarak kullanılanlardan bazıları.
. Yapay Zeka Dilleri: bu diller insan davranışını taklit etmeye yönelik yapay zeka içeren  programların yazımında kullanılan mantıksal dillerdir. En ünlüleri : LISP ve PROLOG.
Genel Amaçlı Diller: Çok çeşitli konularda uygulama geliştirmek amacıyla kullanılan dillerdir. C ve PASCAL’ ı örnek verebiliriz.
. Sistem Programlama Dilleri: Sistem programlarının yazımında kullanılan dillerdir. C ‘ yi sembolik makine dillerini bu grup içinde ele alabiliriz.

Genel olarak bugüne kadar kullanılan  programlama dilleri şunlardır:
·   Basıc
·   Fortran
·   Pl/1
·   Rpg
·   Cobol
·   Modular2,3
·   Turbo C++
·   Pascal
·   Cecil
·   Ada
·   Blue
·   Dylan
·   Eiffel
·   Erlang
·   Avenue

·   Forth
·   Haskell
·   Icon
·   Logo
·   Lua
·   Delphi
·   VBasic
·   PHP
·   Perl
·   SGML
·   XML
·   HTML
·   ASP
·   Jawa
·   ABAP
·   Beta
·   Mercury
·   Miranda
·   ML
·   Oberon
·   Prolog
·   Rexx
·   Ruby
·   Sather
·   SETL
·   Lisp
·   C
·   V C++
·   VFocus Pro
·   Occam
·   Power Builder
·   Smalltalk
·   Snobol
·   ABC
·   APL
·   Flash
·   Python
·   Tcl
·   Apple Script
·   Shell Script
·   VB Script
·   Metlap
·   CSH
·   SH
·   TSCH
·   ........

Veri tabanı programları da şu şekildedir:

ADABAS
DL/I
InstantDB
OpenBase
SearchServer
BASIS
DMSII
InterBase
OpenIngres
Sequential
CA-IDMS
Domino
JDataStore
Oracle
SESAM/SQL-Server
Cache
ECB
JDBC
Paradox
SOLID Embedded Engine
Centura SQLBase
EDA
kdb
Pervasive.SQL
SOLID SynchroNet
CISAM
Empress RDBMS
LDAP
PICK
SQL/DS
Clipper
Essentia
Mimer SQL
PointBase
Sybase
Cloudscape
FoxPro
MS Access
PostgreSQL
Teradata RDBMS
CodeBase
FrontBase
MS SQL Server
Progress
Text (CSV, Tab separated etc.)
DABroker
IBM AS/400
mSQL
Quadcap
TinySQL
Datacom
IDMS
MySQL
RDB
VFP
DataFlex/PowerFlex
Image/Turboimage
News Server
Recital
VSAM
DB2
IMS
Nonstop SQL/MP
RMS
xbase
dBase
Informix
ODBC
SAP DB
YARD-SQL
DBMaker
Ingres
OleDB-Provider
SAS


Assembly
İnformix
             Borland            Unix dbm
            File Pro            Velocis


......