Zaawansowane metody refaktoryzacji kodu Nulls Removal

Transkrypt

Zaawansowane metody refaktoryzacji kodu Nulls Removal
+=#!&
!"# "
$
#! %& #' "
" !( ") ! (!
*
& ,
!
! " (! " -!
"! " !! . /
0
1
"2 ()
*
3 ! !4 (
"3 "2
"4& 5*) (! ! " !
* "
%'3 4 " 2" !!1 -! (2)& 5 -"!
*
" ! * "
-! "(
6 3 )
1 ) "2&
!" # $%
-! "3 " "
*+
!( (2)3 )
!(! (! "2 (2
"73 +
3 & 8
" " " (2)3 ) -
!4 (+
!! " 3 !
" (& 5!(!+
" *4 (
2*
" "2 +
"1! " "!"
&
9(2! 1 "2 "
2
!)
%4 !! 2!'3 ) 4 +
*4 ""! "& :!
(2! 1 "2 +
"1! & :-1 1 ! (2) % (2! (6 !
!+
!' "1 (*
( ! "7! #
+
)3 7)(
"1 2*
;
<
! "!"
!) %
3 ! +
* 2"
)( 3 (*
!+
"
#
"'
& "
<
-!
! ! % " "! !+
! -!'
-! (2
( !*
"
) % !
!
1 21'
#
! ( "! ! "2 +
<
<
>2*4 (2) - !
4 ""1 2 "+
2! & 8
1
1 2 ! ! 3 (*
" 3 -
(
1 "
"
*
(* "!
3 " 2"! 7)(
"
?9$00@ABC&
D"( "! 3 -
"1 ! 2
"1
"
* & E"1 ! +
(! "
3 ! "1* )&
"!! ! -!
!*
" 1
"+
!
%()
2 1
-*'&
5 "! " " "2 ! 6" " +
3 )
!1 (! "2 ! * "
! !(! "1 "2 2! 3 )! * "
"1 !+
"!
#
3 - )4 "
!"2+
1
2! 3 ! - !"4 *4 "1& E
"
* "
" (2"! "2 ! 2!
!&
& $
F
! 3 & "# $$ ? G,H@@@C +
*1 1-
"
"
& E"
!3 1 %$! $& 1 (*
"
3 !
* *&
I" "
#!2 "!" "!"
!+
! & 5 ! "
"
""
#! +
!# "")3 ! "( "2 ! (2! 1
!"2
* "!& "
!
"1 !
"
(63 )
-
4 " "
+
* "
& >(*4 "!"
!! (6 " !1 +
)
"
"2 ! '( & 0
1 "2 ! +
*
)3 )
- "
1 ! "
-
"
43 -
! "! -!
* " "
+
! 3 !
/
* 4 )
&
#! -
!4 "" 2"* +
5 ! "" " " *1 *4 "13 "!
*
3 #
3 J
"
! "
1 "(-!4 "
"!"
! 3 )1 ( /
3 ) " +
"
!2 *"&
D"
! #! ," $
K
!+! 2!) "1! "7& 5 "
)* "( "
"
" 2! 8K3 )! -
!4 ! "+
"!
2! & ,
3 ! !+
!"
"2 "73 ! #
& $)- 2! !
!3 -
"7 1 !4 "
2 2 3 ! +
"2 "
"! ! " !& 0!*
"7 "! * "1 " #
+
* & ! 4 "
)
"
3 )
!"!
* !!3 !"!
-
* +
"4 !
& 8
" (
"! "
2* "
) #!&
& '(
) * "! !( "! %&
?:JHG@@3 EL9=@@C'& 5
" 2! +
!
"
")* ! & H !( 8K
"
*4 3 )1 - !"4 #
3 * ! !)& : ! "2 *4 !*13 ) -
"
(4 * "
& 5 2!
EMF * ( " 2"
!! 6 ?:JHG@AC ( "
!2 !+
6& 8
! ) " #3 -
(
"
! -
"2 (+
4 ! ! 3 -
* !
%
"!'3 ! * & +
"( :
" & 5
* "
)+
- (1!4 2 )+*1& :
1 2 +
(
!"11 * !"
?:JHG@@C&
="
* "
!! % "
)* "
!!' 2+
! "
!
("*&
3 -
" " ( -!3 (2! "(! +
!#
3 3 -
"
! & ,
*3 ! )* ! * "
1 !3 ! +
( 1 "
"& E
)
" ! ! #
)& 5 ! -
!+
(
(" (1 ! "!"
!)&
! " #" $$ %&'
O
& "
!-"! !*
!3 -
*4 "
-!
*
- !& J! !!4 (1 ! " ""
(-!+
) !1! 2 (! "
%$! '&
J -
!4 !
" 2 -*4 "
*
-
-* " !3 "
+
(6 ! 1) ! !&
J
(2! "1 1 ") "11 !!1 ) !+
* #* + * , * - !&
5
"!" ! ! "
"! "!"
!) ( "2 +
!& ," "2 !
! " "
" 4 2! "1 2 !)
*
4 "
! * "!& 5 2!
#!! & .F !
*4 "1 * !3
)
"
4 )
"1 2 "
?.=F,@@C& -
-!
" "
)
+
" " 1
! 6"
&
,
)
2! 1 *
& D(13 -
"
* "! 1 ! * "
"1 & 0!*
! * 1 23 -
-
4 (
!4 !!1 !! %(2!' +
6& ! *
" !1 ! -! ( * 3 EH& H ) " "1 "+
! *4 " "& >2*! 1
" ! $ 3 )! 2
#
"( %
"
!1' +
!
2
( ?$JH@@C& 8
" ! -
"
&
82! ! 8K >NN (! -
"
)
"+
* "!& ! " # "
!
!3 )
"1 4 1* *4& J!
"
! -! -
!4 !
"
&
* 2" 1 "
"2 "
-
"
+
* !"1 *4 "1 3 -
"+
-
"
"
* "3 2
)7
"! "
& 0!*
1
& " ! +
-
4 (
"
(23 (
"2 "
*&
>1 14 !-
!
! (2) - !#4 "!
2!
3 ! -!(! "2 & .F % " "1 )! &
?J9=H@@BC'3 4 !
") 4 * &
H "
1
3 1
!# 2! ! ! ) )3 ! "
!
3 2" "!!
2!& .-
!4 1-
""3 ( "
3 +
43 -
"
"2 !#& D ! ) "" +
&&&
!"(
1 "2 1
!! * *! "
"!3 "
6 ! 2!) 2+
( 2"
&
D" 2 !4 "
2!3 )
(! 4 +
*4 !
2*
* +
"
3 -! (-!4 " (*
"! 3 )
"1 "2
2 -* ") ( *
"2 !
! & .
! "
#! ! +
"4 "
3 )
"
)
1 2 ! -! *
"
3 -* !
&
5 "2
2*3 !-
" #!3 " "
(6 ")1 1 (& .1 )
+
") *
""
* "
1 -
1+
1
"2& 0!*
2 !! 2+
!) ! 8K3 >NN3 ! >P " -
(
!+
"" * "!" !& 8
2 -* -
4 *4 3 "
)
-! "( "!!3 ") ")(
2* !+
!"
! & 5 "! 1! * "! &
* H
#! "
"
1
& E !# !( !
?0:@@C& 0" * !"( 1 *4 "!"
!! !"2+
! # /
?/05F@@@C& 0
*( "
*
!
* "
1
3 ! #*& :"(
"
3 -
"
! " !3 !
!3 ! ! * 3
"
4 4& /
( "
"!
-! %
" "
"1'3 )
- 4 ;
<
<
<
"1
!
*4 "1
*4 (1
(
"1 ( " "
1
" "!"
!
+
(
3 )
"
-
!4 !
3 !4 2
(*! +
(-
& H (*
(-
"! *1
"4 " -13 " -! 4& D"! !
"4 " "3 )! "
1 " *3
)! " 11!& D*4 * ) "!Q (
"! !3 !
+
"!3 "!3 "!"! !! (2)&
& "
/
"
"1-
!
*4 (1 "2 "3 )
- +
! 3 1
"!3 (2
& H
" ! !4 "!" )
& *4 -
!4 - ! ! & (*4 +
3 !"*4 "
*4 "&
5
(1
" "
& :
+
-! 2
""4 !*1 "
2 (3 ) "(4 "2 "21! );
<
<
<
<
*
) "(
!
)
!
") "!!
D""
"(
!
4 -*4
(2)3 )
(!! "4 "! ) (
* "
! & : -
)
! !4 "!3 )
!-13 -
"2 +
(
"3 & ="
1 "1
!
"")
-
!!3 ! 14 (2)& 0"12 #+
*
) "2! )
"1 !4 "
(
3 ! - !( +
1 !#2 !4 ?0:@@C& - 4 "! 2
(-*& "
( % !' ( 1 "2 !#+
43 " ! (-
% "!3 ! +
"!' !1 (
& 5!
"23 -
+
"! "1 1
"! 2
3 )
-
") "2
* ! ?8L,=C& >2" !(!
"! ! #
!1 * ! "+
! 6 #
"1 " ""
!*
&
J
"
*4 "! "!"
!! "
) #+
! ?/05F@@@3 $G/3 G$=C& 0"1 -! +
"(
6 "1 "2 43 -
! "
+
3 "
"!& $
! *+
" !# *4 * "
1 "! ")3 *4 ) !
%$! .$ ' ?0/@@C& H3 ! )3 -! (
!*1 !2 !" !1
""&
J
2 ! >JEG )-
*" +
"!
!1 "
4 #!2& ,
! "!
"1 "
") "2 ! !! (& .-
!4 & !
"
! "! ( )-! "& J! ( 2*
!3 -
#1 "+
4 ( !#
"! )
- 2 ! +
4&
D"
! #! ," $
K
B
* +
) 5 "(
6 ! /
( "2 +
* / *$ %$! /&! -
")
" " !3 ) "2 !!" +
"! ) "!3 0 1/ 3 "
5# ?500F@@AC& .!1 " !
1! "2 +
") * & :(
"
!#
* "
"
"2 2*1 & 5! !"
! "! -
4 " " 4 & D!"
" " 3 -
! !+
!"1
1 "2 1 4 )-
2! 1+
! 1! &
0)
! " !( " ""+
"
& !( ! " *4 3 " (! +
!& =
" !*
"
"
!#
"! "-3 )!
4 2
" & E
! !# " " " !" & :2 (
"" *
%#3 " "'3 "
!#
"- " !
23 ! !"1
"1 )-4 "(!
)& 8
" ! !" "" ! 1(
" +
* #
! ! " !&
( )*% +
% % ,- *
( )*% '
% +
% %%
% ,- %%
*
( ( !
( ( !
+
+
* !
* !
! . * //
! . * !
! . *
,-
!
!
0
,- 0
( %% '
% +
( ( ! ,-
!
+
0
0
0
0
0!*
""
"
(2"! "
" * -!
"2 (1
2$ % ?0/@@C'3 )! 3 ! "( "!"+
! & 5"!"
! "
"1 2*
(
"
"1 -! ")& :2 !3 ! +
-!4&
A
& "
#
# (
$ ,--.//01
()1 !1 "
" "
+
! 2
"
!#
"
& D)4! 2 3 -
! "! !! "2 ! *
& ,
(
"2 "
1
3 !- #
#
"
* & ,
"
! "
"
"2 ""4&
5# * )
-3 -
"
-
!4 !3 ! )- 1 "2 3 !14 *
& 5 "! -
*4 -
" +
* !3 !
(1! )3 1+
! )-! "")3 -* ! ?500F@@AC&
5 "2
2* "
-* " * "
!+
"21
)
- ! !&
2 #
5 2* " "
-* "" #! +
) !1! "" ! *& 921 2
"(
"! 1! "12 "
* (2!&
! "
"
* "
+
) * ! -* "& ,
"1
)1 "!"
! ) * "! !!
*
-* 1&
5 "
2* " " "2 * "1! ! ! "7
! 2""! 7)
( (2)
& 5 2"* !! 2!) ! +
(*
! "7! %! - #
!!' 1 *4 "1 " +
2
! ()& D!
" ""
!
+
*4 !;
<
<
!"4 1
*4 "(
!43 -
" - 2
#4 "!"
&&&
<
<
-* 2
!43 -
"( "12! (! "
! * 3 ) )
"
-
"
! "2 21 (! !4 ""
!
"!" !
! )3 4 )! !
-
"2 14 ! & D! 1 !4 +
#
$
3/!
0
! " "2
* ) )& "
("*
) "1 1
"
!#1 "! !& >2" "23
-
("*4 * -
4 !"
*& I"
2 #1 ) * "
2 !!2&
.1 !4 4 4 ( $3 & ,
! 3
"!#3 1
"
!2 !&
D)4! 2 1! "
3 )! )!* -!+
"
!4 "
"
"2 ! !(1 "1& >2*4 ("* -
"4 " & .- "43 ! ! 1-!( "
" "( !3 )! 2
( +
!"*4& 5
! -(! 4 "
"& 8
+
"
-
!4 ! !
& >(! "
+
5& E1 "!
4
"(! "
2! !
?JF9J@@3
/05F@@A3 80:RC& $)
- * ! ! )(+
"! 1
"
" ?J9=H@@B3 S.FEC&
2 "! "
!
"" * +
!& 5"7 2 -* ! !4 !" 1 *1& 0!*
"
" !
3 2 " +
!4 "2 "
)1 !(*1 1 3 !
"!
!4 "" * "!&
2 #
!"1
!"1
2& 3
>
" !
"
* 1! !+
& "
"
* "
& H #
"1 *4 "
"
-
!4 )
- !3 17 *+
-! !"
*&
.!# !
*
+
-!
3 )
!"3 ! " ( ( *4 !*1 %2*
"1 '& " 1-!4 ! "3 )
*
1 -!
& 5
! ( " -! ! "
"
"
!3 " "2 "" (*
-!
& # )7
!3 "
(1 "2 *
"
& :2 )
-
)4 2"1 2 -!
4 +
!
&
J! 4 "3 - ""4 "
!"! )4
23 ! ! ""
"2 "( & 8
* " -
3 "2 4 ! 14&
0
!3 4 ! "
"2 " "2
* +
"
) ) %'( '& H +
1 "2 ! !1
3 -
2" -
!4 +
!(1
! "
& D!
2 -
"
+
"
*3 )1 - ! !"4 "
1 "
&
0!*
"
- ""4 "! *
"! %1/'3 (1
"
2$ 6$ !"! "+
"!& 5!
"2 3 -
- ! 2" !(! 1
"
& "2 1-!4 3 ! 6
! " "!"
"(! "
& E
)(! "2 !4 7 / &
2& $
5 )! 2! % & 8K
' " !"
+
*4 "1 #
! #4 *
2 %$! 8/$ +
8+' -* 2 !
"!!
1 & " #3 -
" #
3 4 - "
3 "
-
!4 (2
-! ! "&
2& #
+
0
D"
! #! ," $
K
2&& 3
" " !"!4 *4 "1 3 +
!"
"2 "
& 0"1
!"& 24 -
!4 !"3 6 +
! & -*1 "!"
-
4 24 ) " "1 #
2& 0
"2 "") 2 ! !! ! " "2 "!&
:
2 !"1! " "2 +
! "
3 )! *
"
6 ! +
& ="
!1
* %' " "2 ! "! +
"
& "(
"
%' "
&
J! 4 "
-! )4 2 !" *
3 )! " - -!& ,
)
! #1 !+
!4 1 !1 !
& ,
(1 * +
" !(2 -!( - & :2 2 " " "
2 (
(2&
2* $ 5 ! "
1-!! "" * (
" & D" ! !4 ""
!1 +
! 2! "
%$$3 $ * / '&
2* #
3
2,2
1
5
2*& 3
* +
2,2
- 3,4&'
0
- 3,4&' +
1
0
*+
5
0
& "
,"" " "
!( 3 ! !!"!( !1
" "
! !& >
(" !1) " 3 -
! "
-1 *
- !3 "
!
" !"
"(1
"!2 !11& 0 3 -
2*4 3 ) "
!! ) "! ! "1(3 "1( "
)! !
%'3 " "(
& J! !4 !
(
! ! !+
1) " "
%' ) 2* * -& >2+
* - *4 * !- ! "
+
*4 6& 9 %O' %' "
!! %'&
H
"
( 2 !4 ""! !
"
)!
"! !& .-
- !4 "23 -
)! "! %' "
-
!4 "! ! "3 1
&
2** #
!
2,2
#
1
5
2,2
%
#
6 %
1
5
2*2 3
8
" 1
/
3 )
"(
"
2*& $)- !3 -
""
! "! ! *
2 "
)
#*3 )
- " * 3 !"(
)-
"&
&&&
& 4 (
$ "5 $ # (
% - 6
5 )! 2! -
"
4 6 3 -!
-
!4 & .- ! !#4 "
+
" ! 4 2 11 )-4 ! "
"(!
%!"
'& E"
! ! "
;
% =! -! 1
" "
"!
"! 2
2 "2 *
!# "! & +
);
% J! 4 "3 - !4 1 #!2 -! )4
2 !"!
* )7
"
"
3 ! "+
1 *4& 8
" 2 "! /
- 1
"! "2 ""+
4&
22 J
! ! 4 * +
"
* " ! " 4 !1&
1 *4 3 1 *
1 1* +
1 *43 ) !4 )3 " !* "! "
+
!& D)4! 23 -
! (
"
" !+
*& 5*4 " -
"4 !
"
-
!& %0
2"*4 2!)3 ! !! 13 !" ! *&' 5*4 2*
-
!4 ) 2 "
)! !3 )! "!
& 5 +
"! "
!
"2 -!
!1)&
22 #
! ' *
+
2,2
0
! ' *
-
3,4&'
+
2,2
- 3,4&'
0
O
& "
22& 3
D""
"(
!*3 )
"1 +
" -!1! !1)& -
(
#4 )-! "(! & D *4 ( !
#4
! !
"! !1
& :2 !1 - -
"
"!+
("4 " !( ! & 5 ! 8K! "
!3 !- !" #
"2
-! "! !1! !" "
+
" !( !&
: "
3 ! ! 2! !1+
)3 17 -!
" -
! 2)& 5 "!+
- ""4 "
! "
& H
+
#4 " 1 "23 ) 2
( 1
*4 "! !1
& .- ! ! )-! +
) !4 & " 4 1 #*43
! -4 3 )! 1 2 !((&
7 '
H
2
#! "1 "
1 1 !
* -!
& D"(! !2
! *" ) ! )
- !(! 1
"
2 ") !&
D
#! 1 "-
+
"! ! " ) " ! 1! !"2
* "
& "
! (1 ) ! !)3
)! ( "2 ""4 #!2& E
!" "!"
" * *
!"
")
* "!&
* 4 3 -
"
! (1
+
! !4 !(1 "-*1& L"!"
!
"
)
! !
)& "
) ")
"" *
) "2! (4 +
2 ! *" "1! +
!1 )(!1 #!2&
!($
?J9=H@@BC
E& J
3 E& M""3 E& .T3 E& 5 E& 5
3 0
9 : $$ 3 =
8
D"
! #! ," $
K
: F
"3 & A+AA3 3 3 @@B&
?JF9J@@C
J& J3 J& 9
3 J& J& 0"3 7 1/ .
'3 @ =
>#
U
! F
:+
9"
"3 :3 =
3 "3 @@&
?9$00@ABC
/& & 9"3 ( / $$3 =GGG >
3 +@3 J3 @AB&
?:JHG@AC
>& 8& :
3 - ./ $3 $
:+
"
; E
5"3 J"+5
"
!3 @A&
?:JHG@@C
>& 8& :
>& 8& :
3 1 7$3 $
:+
"
5" @A@+@@3 J"+5
"
!3 @@&
?:JHG@@C
>& 8& :
3 $ /3 J = :+
"
E!"
"3 J"+5
"
!3 @@&
?/05F@@AC
.& /
3 .$ '3 L"
3 @@A3
;VV&&V"
V
"V++A@O+V
"+&&
?/05F@@@C
.& /
3 '$; *($ .$ "#$ +3
J"+5
"
!3 @@@&
?0/@@C
G& 3 G& T
3 G& 8" G& U""
"3 .$ ;
" '/ 1/ 1 23 J"+5
"
!3
@@&
?80:RC
J& 8("3 J& T
3 J& (
6 J& E
3 1/ '
2< 7**3 :"
GW
E!"
"
J"3 =
>#
3 :GSJ 3 E
+
&
?8L,=C
9
3 =4 0$ 63
;VV&&&
? G$=C
8& K"!3 '$ 3 #3
;VV"&VWV
#V&
? G,H@@@C
& 9
3 "# $$ "#*; "/ +$3 J+
"+5
"
! >Q " 0
3 @@@&
?.G=8C
G& .
G& !3 2*$ !"0 $ 3 = &
G>00X&
?.=F,@@C
$& .
3 $& H#
$& T
3 0 . 2 93
.=H ""3 >
3 @@&
?0:@@C
5& /& 0!
3 '$ 1/1 63 $+
:"3 LK
"! # =" L+>3 @@&
?$JH@@C
,& 3 7 8 1/ 9$$ $ .$3 $
& >
8& E :&3 J"+
5
"
!3 @@3 ;VV&&V"
V
"V++BO+O&
?$G/C
. /
3 !$!&
?EL9=@@C
& E
3 & !"3 & F
"!" & L"3 & "
- 1/ <; $ > 23 0+
@@3 ;VV
"
&&
&V"
@&&
?500F@@AC
9& 5#3 0 1/ 9$$ $
.$ )3 $
& . $& >&3 $
:3 9" /&3 J+
"+5
"
!3 @@A3
;VV&"&"&
VY"VF+@V#&"&&
?S.FEC
5>3 ?9 2 2 .*3 3
;VV&&VH$V&