AULA 4 - Programação II - Graduação
Ambientes de desenvolvimento C++
Existe uma infinidade de ferramentas e IDEs para programação C++.
Vamos nos ater, neste curso, ao desenvolvimento de códigos C++ orientado a objetos com interfaces GRÁFICAS, para Windows.
O ambiente RAD escolhido foi o Visual C++ pela simplicidade (#sqn) e leveza (kkkkkk), em comparação com vários outros, como o Visual Studio, por exemplo. Além disto, como o objetivo é desenvolver aplicativos de alto nível, é mais fácil selecionar uma IDE que é voltada para tal.
Existem inúmeras ferramentas de desenvolvimento, desde as mais simples, como Dev C++ e CodeBlocks, até as mais sofisticadas e mais adequadas para desenvolvimento para Web, ou para Banco de Dados, como NetBeans, Eclipse e Visual Studio.
Um a c l a s s e d e t e r m i n a a s c a r a c t e r ís t i c a s d e u m o b j e t o : p r o p r i e d a d e s , e v e n t o s e métodos relacionados
m é t o d o s r e l a c i o n a d o s.
P r o p r i e d a d e s : U m o b j e t o t e m c e r t a s p r o p r i e d a d e s , o u a t r i b u t o s . Pa r a o e x e m p l o a c i m a , u m t e l e f o n e p o s su i c o r e t a m a n h o . Qu a n d o u m t e l e f o n e é c o l o c a d o e m su a c a s a o u e sc r i t ó r i o , e l e t e r á u m a c e r t a p o s i ç ã o s o b r e u m a m e s a . O r e c e p t o r p o d e e s t a r n o o u f o r a d o g a n c h o .
Ob j e t o s cr i a d o s co m o Vi s u a l C+ + , c o n t é m c e r t a s c a r a ct e r ís t i c a s q u e sã o d e t e r m i n a d a s p e l a c l a s s e e m q u e o o b j e t o e s t á b a s e a d o . Es t a s p r o p r i e d a d e s p o d e m s e r f i x a d a s a e m s e u d e s e n v o l v i m e n t o o u e m t e m p o d e e x e c u ç ã o . Po r e x e m p l o u m c h e c k b o x , p o d e r á c o n t e r a s s e g u i n t e s p r o p r i e d a d e s , d e sc r i t a s n a t a b e l a a b a i x o :
P r o p r i e d a d e D e s c r i ç ã o Ti t u l o Um t e x t o d e s c r i t i v o a n t e s d o ch e ck b o x H a b i l i t a d o Qu a n d o o c h e c k b o x p u d e r s e r s el e c i o n a d o p e l o u su á r i o . Esq u e r d a A l i n h a m e n t o a e s q u e r d a d o c h e c k b o x Vi s ív e l Qu a n d o o ch e ck b o x e s t á v i s ív e l n a j a n e l a
Ev e n t o s :
Ca d a o b j e t o r e co n h e ce e p o d e r e s p o n d e r a c e r t a s a ç õ e s c h a m a d a s e v e n t o s. Um
e v e n t o é u m a a t i v i d a d e e s p e c íf i c a e p r é d e t e r m i n a d a , i n i c i a d a t a n t o p e l o u s u á r i o q u a n t o
p e l o si s t e m a . Na m a i o r i a d o s c a s o s e v e n t o s s ã o g e r a d o s p e l a i n t e r a ç ã o d o u s u á r i o . Po r
e x e m p l o , p a r a o t e l e f o n e , u m e v e n t o é d i s p a r a d o t o d a v e z q u e o u s u á r i o r e t i r a o f o n e d o
g a n ch o . Ev e n t o s s ã o g e r a d o s q u a n d o o u s u á r i o p r e s s i o n a u m b o t ã o p a r a d i s c a r , e t c .
Na p r o g r a m a ç ã o p a r a W i n d o w s , u m a a ç ã o d o u s u á r i o q u e p o d e p r o v o c a r o d i s p a r o d e
u m e v e n t o p o d e s e r u m cl i c k o u m o v i m e n t o d o m o u s e , o u p r e ss i o n a r u m a t e c l a d o t e cl a d o .
Qu a n d o u m e r r o o c o r r e a o i n i c i a l i z a r u m o b j e t o u m e v e n t o d o s i s t e m a é d i s p a r a d o .
A t a b e l a a s e g u i r m o s t r a a l g u n s e v e n t o s r e l a c i o n a d o s c o m o c h e c k b o x .
Ev e n t o D e s c r i ç ã o Cl i c k d o m o u s e U s u á r i o p r e s s i o n a o c h e c k b o x Go t Fo c u s U s u á r i o s e l e c i o n a o c h e c k b o x p o r u m c l i c k o u t a b . Lo st Foc u s Us u á r i o s e l e c i o n a o u t r o c o n t r o l e
M é t o d o s : Mé t o d o s sã o f u n çõ e s q u e e s t ã o a s s o c i a d a s a o s o b j e t o s. Su a s ch a m a d a s s ã o f e i t a s a t r a v é s d e m e n s a g e n s . U m m é t o d o p o d e e s t a r r e l a c i o n a d o a u m Ev e n t o . Ex e m p l o s e f o r e s c r i t o u m m é t o d o p a r a r e sp o n d e r a o e v e n t o d e c l i c k d o m o u se , e s t e s e r á c h a m a d o t o d a v e z q u e o b o t ã o d o m o u se f o r p r e s s i o n a d o . Mé t o d o s p o d e m e x i s t i r i n d e p e n d e n t e d e e v e n t o s , e s t e s m é t o d o s s ã o c h a m a d o s e x p l i c i t a m e n t e d e n t r o d o có d i g o . A t a b e l a a s e g u i r m o s t r a a l g u n s m é t o d o s r e l a c i o n a d o s co m o c h e ck b o x .
M é t o d o D e s c r i ç ã o At u a l i z a r O v a l o r d o c h e c k b o x é a t u a l i za d o p a r a r e f l e t i r a s a l t e r a çõ e s q u e p o s s a m T e r o co r r i d o n a b a s e d e d a d o s s u b j a c e n t e . Se t Fo cu s O f o c o a t u a l é p a s s a d o a o c h e c k b o x c o m o r e su l t a d o d e u m u su á r i o p r e s s i o n a r a t e c l a TA B a t é o c h e c k b o x se r s e l e c i o n a d o .
A c l a s se e n v o l v e , a s so ci a , f u n çõ e s e d a d o s, co n t r o l a n d o o a ce s so a e s t e s, d e f i n í- l a i m p l i ca e m e s p e c i f i ca r o s s e u s a t r i b u t o s ( d a d o s ) e s u a s f u n ç õ e s m e m b r o ( m é t o d o s ) .
Ex e m p l o s :
1 . U m p r o g r a m a q u e u t i l i za u m a i n t e r f a c e c o n t r o l a d o r a d e u m m o t o r e l é t r i co p r o v a v e l m e n t e d e f i n i r i a a cl a s se m o t o r . Os a t r i b u t o s d e st a c l a s s e s e r i a m : t e m p e r a t u r a , v e l o c i d a d e , t e n s ã o a p l i c a d a . Est e s p r o v a v e l m e n t e s e r i a m r e p r e s e n t a d o s n a cl a ss e p o r t i p o s c o m o f l o a t o u l o n g . A s f u n ç õ e s m e m b r o d e s t a c l a s s e s e r i a m f u n ç õ e s p a r a a l t e r a r a v e l o c i d a d e , l e r a t e m p e r a t u r a , e t c . 2 . Um p r o g r a m a e d i t o r d e t e x t o s d e f i n i r i a a c l a s s e p a r á g r a f o q u e t e r i a c o m o u m d e se u s a t r i b u t o s u m a s t r i n g o u u m v e t o r d e s t r i n g s , e c o m o f u n ç õ e s m e m b r o , f u n ç õ e s q u e o p e r a m s o b r e e s t a s s t r i n g s . Qu a n d o u m n o v o p a r á g r a f o é d i g i t a d o n o t e x t o , o e d i t o r c r i a a p a r t i r d a c l a s s e p a r á g r a f o u m o b j e t o c o n t e n d o a s i n f o r m a ç õ e s p a r t i c u l a r e s d o n o v o t e x t o . I s t o s e c h a m a i n s t a n c i a ç ã o o u c r i a ç ã o d o o b j e t o . 3 . Um p r o g r a m a d e co n t r o l e d e v e n d a s d e f i n i r i a s a s cl a s se s Cl i e n t e , Ve n d a , Pr o d u t o , Fa t u r a , Ve n d e d o r . As cl a s se s d e Cl i e n t e e V e n d a t e r i a m o s se g u i n t e s d a d o s e m é t o d o s:
Cl a s s e A t r i b u t o s M é t o d o s i d _ cl i e n t e I n cl u i r n o m e _ c l i e n t e Al t e r a r e n d e r e c o Ex cl u i r p e s s o a _ a u t o r i z a d a Con su l t a r Cl i e n t e St a t u s i d _ c l i e n t e r e g i s t r a r i d _ v e n d e d o r ca l c u l a r _ co m i s sã o d a t a _ v e n d a c a l c u l a r _ f a t u r a Ve n d a p r o d u t o
2 N o t a ç ã o u t i l i z a d a p a r a A n á l i s e d e P r o j e t o B a s e a d o e m O b j e t o s .