#Spring2003
Explore tagged Tumblr posts
fashionhubsworld · 8 months ago
Text
Tumblr media Tumblr media
"Roberto Cavalli Spring 2003 - Bold and Exotic Fashion Statement"
"Step into the world of Roberto Cavalli's Spring 2003 collection, where bold animal prints meet luxurious fabrics, exuding sophistication and exotic charm. This stunning ensemble captures the essence of Cavalli’s signature style: daring, glamorous, and undeniably unforgettable."
1 note · View note
cosmicanger · 7 months ago
Text
Tumblr media Tumblr media
Junya Watanabe spring2003
6 notes · View notes
slowandsweet · 3 years ago
Photo
Tumblr media
Chanel Spring 2003 🌞
2 notes · View notes
edpinnata · 3 years ago
Photo
Tumblr media
0 notes
greekpara · 7 years ago
Photo
Tumblr media
Regrann from @tam.bama - ❀ #15thDeltaversary #LZMade #Spring2003 #27DIVASofDISTINCTION #DivasWearRed #DST1913 #DST105 #DeltaSigmaTheta @k_rookard @dvafxxy13 @miss_serenity_2you @bossybee25 @mzmimi3 @rainetide @melody1913 @mscenterstage (at Lineup)
1 note · View note
rashiddarden · 8 years ago
Photo
Tumblr media
From December 4, 1906 to March 15, 2003 to today. Thank you, #MuLambda, for allowing me to enter the House of Alpha through your door. The memories are only just beginning. #AlphaPhiAlpha #Spring03 #Spring2003
14 notes · View notes
4evahaka · 7 years ago
Photo
Tumblr media
#RockHillSouthCarolina #Winthrop #WinthropHomecoming #WinthropUniversity #Spring2003 #PsiKappa #PsiK #OmegaPsiPhi #Ques #Omegas #1911 #4evahaka #4evahaka2 #CreditToOwner @nphc_rockhill @psi_k_ques
0 notes
johnmichaelantonio · 8 years ago
Photo
Tumblr media
#eugeniavolodina #valentino #Spring2003 #fashioninspiration #style #instafashion #instastyle #beauty (at Milan, Italy)
0 notes
spacerangerprince · 8 years ago
Photo
Tumblr media
In 2003, stealing back gold with MINI Coopers was made cool again with the release of The Italian Job. 14 years ago. (05/30/17) #timehop #flashbacktuesday #throwbacktuesday #abe #charliecroker #paramountpictures #theitalianjob #american #heistfilm #may30 #14yearsago #spring2003 (at Weston, Toronto)
0 notes
phpmentors · 8 years ago
Text
「珟堎で圹立぀システム蚭蚈の原則」批刀 (1) 䜕のために、「デヌタずロゞックを䞀䜓に」するのか
増田亚氏の「珟堎で圹立぀システム蚭蚈の原則]」の評刀が高いようです。
この本が、オブゞェクト指向の初玚者に受け入れられ易いこずはわかりたす。オブゞェクト指向的なプログラミングが出来おいない珟堎で、明日からでも出来そうなこずが平易に曞かれおいるからです。オブゞェクト指向の入り口を指し瀺しおいるように芋える。
䞀方で、私ずしおは、この本が指し瀺す入り口は、入りやすいかもしれないけれど、結局はどこにも通じおいないのではないかず疑っおいたす。
本皿では、そのように私が考える理由に぀いお、぀の切り口からご説明したいず考えおいたす
䜕のために、「デヌタずロゞックを䞀䜓に」するのか
ポリモヌフィズムは䜕のために
「ドメむンモデル」ずは䜕か
長くなるので、今回は、䞀番目の「䜕のために、『デヌタずロゞックを䞀䜓に』するのか」に぀いお。
批刀 (1) 䜕のために、「デヌタずロゞックを䞀䜓に」するのか
本曞はデヌタずロゞックを䞀䜓にするこずを匷く䞻匵しおいたすp.77/䜍眮No.1294等。デヌタずロゞックを䞀䜓にするこずは䞀般には「カプセル化」ず呌ばれ、オブゞェクト指向の特長のひず぀ずされおいたすから、こうした䞻匵自䜓は突飛なものではありたせん。
問題は、本曞の堎合、カプセル化するこずが自己目的化しおいお、䜕のためにカプセル化するのかずいう芖点が極めお垌薄なこずです。その結果、「うたいカプセル化」「たずいカプセル化」の区別がない、ずいう状況に陥っおいたす。
「デヌタずロゞックを䞀䜓に」しおいる䟋
デヌタずロゞックを䞀䜓にするずいう䞻匵を端的に実践しおいる䟋ずしお、本曞p.37/䜍眮No.759最䞋郚に掲茉されおいるコヌド䟋改善埌を取り䞊げおみたしょう
Money amount(Money unitPrice, Quantity quantity) { if(quantity.isDiscountable()) return discount(unitPrice, quantity); return unitPrice.multiply(quantity.value()); }
これに察しお改善前のコヌド䟋p.37䞭ほど、䜍眮No.738は以䞋の通りです
int amount(int unitPrice, int quantity) { if(quantity >= discountCriteria) return discount(unitPrice, quantity); return unitPrice * quantity; }
本曞のこの箇所での䞻匵は「「型」を䜿っおコヌドをわかりやすく安党にする」ずいうこずですから、改善のポむントはintで衚珟されおいた金額、単䟡、数量にそれぞれ適切な型を付䞎したこずですが、いた泚目したいのはその点ではありたせん。
改善埌のコヌドではQuantityクラスの導入に䌎いisDiscountable()ずいうメ゜ッドが蚭けられ、そこに、倀匕き条件刀定のロゞックが移されおいたす。これは、「デヌタずロゞックを䞀䜓に」ずいう本曞の䞀貫した䞻匵に埓っおおり、良い䟋ずしお提瀺されおいるこずはあきらかです。
私が提起したい論点は、これがᅵᅵ圓に良い䟋なのかずいうこずです。
isDiscountable()メ゜ッドを蚭けるこずによっお、倀匕き可吊刀定ロゞックは、それが甚いる「数量」ずいう倉数ずずもに、Quantityクラスに閉じ蟌められたす。これは確かにカプセル化ではありたす。しかし本圓にこれは劥圓な蚭蚈なのでしょうか。どういう点でこのカプセル化は有甚なのでしょうか。
情報隠蔜
その問いに答える準備ずしお、䞀歩䞋がっおカプセル化の意矩に぀いお確認しおおきたしょう。
䞀般にカプセル化の目的は「情報隠蔜」にあるず蚀われたす。䞡者をあえお区別せず、カプセル化ずは情報隠蔜のこずだず考える論者もいるようです。この「情報隠蔜」ずいう抂念は1972幎にデむビッド・パヌナスにより提唱されたした。その論文「システムをモゞュヌルに分割する際に甚いられるべき基準に぀いお」はWebで閲芧できたす。
この論文でパヌナスが蚀っおいる隠すべき情報ずは、むンスタンス倉数のような具䜓的な「デヌタ」のこずではなく「蚭蚈䞊の意思決定に関する知識」です同論文p.1056「The Criteria」。情報隠蔜ずいうより知識の隠蔜なのですね。
䟋ずしお、スタックを衚すオブゞェクトを曞くこずを考えたしょう。
スタックは、耇数のデヌタを順に入れるpushするこずができ、入れた順の逆順にデヌタを取り出すpopするこずが出来る、いわゆる「埌入先出方匏」のデヌタ保管容噚です。
スタック内郚でデヌタを実際に保持するためのデヌタ構造ずしおは、配列や連結リストなどの遞択肢があり埗たすが、スタックに察する操䜜をpush()ずpop()に限定しおおけば、内郚構造ずしおどれをずっおも、あるいは、ある日思い立っお配列から連結リストに切り替えおも、スタックを䜿甚しおいる偎のコヌドには圱響を䞎えたせん。
情報隠蔜ずはこのようなものです。
Quantity はどんな知識を隠蔜しおいるか
さお、情報隠蔜に぀いおおさらいをした目で、QuantityクラスのisDiscountable()メ゜ッドを眺めおみたしょう。これはどんな知識を隠蔜しおいるのでしょうか。
数量がいく぀であれば倀匕き可ずなるのかずいう知識は隠蔜されおいたす。元の匏、quantity >= discountCriteriaでは、その点は顕わでしたが、isDiscountable()では隠されおいたす。
䞀方で、このメ゜ッドを蚭けたこずで、「倀匕きは数量のみに基づいお行われる」ずいう知識が開瀺されおしたっおいたす。
倀匕の可吊はたぶん受泚入力画面䞊に衚瀺したいでしょう。であるならば、その画面を衚瀺するためのクラスのいずれかの箇所で以䞋のようなコヌドを曞くこずになるでしょう
Quantity quantity = Quantity.valueOf( /* 数量フィヌルドの入力倀 */input ); if (quantity.isDiscountable()) { // "倀匕き適甚"ず画面に衚瀺 } else { // "倀匕き適甚なし"ず画面に衚瀺 }
取匕条件が倉曎され、数量だけでなく金額も含めお倀匕き適甚可吊を決める、ずなった堎合、どうなるでしょうか。もずのamount()メ゜ッドだけでなく、この受泚画面のコヌドも倉曎しなくおはならなくなりたす。圱響箇所の拡散です。
本曞では、「デヌタずロゞックを䞀䜓にする」こずの目的ずしお「業務ロゞックを重耇させない」ずいうこずを匷調しおいたすがp.77/䜍眮No.1294)、このケヌスではむしろ逆の結果をもたらしおいたす。
開瀺しおよい知識隠蔜したい知識
䞊蚘のコヌドが問題を含んでいる原因は、このコヌドが「倀匕きは数量のみに基づいお行われる」ずいう知識を適切に隠蔜しおいないこずにあるわけです。
本来は、倀匕き刀定のロゞックをどのオブゞェクトに配するかを決めるにあたっお、どのような知識を隠蔜すべきか、あるいは裏返しお蚀えば、どのような知識は開瀺しお構わないかずいう点に思いをめぐらすべきでした。
倀匕き条件などずいうものは、ビゞネス䞊の郜合により倉曎されやすいものです。このケヌスのように泚文数量だけで倀匕き可吊が決たるずいうケヌスもあるかもしれたせんが、発泚金額も考慮し、あるいは発泚者が䞊埗意かどうかも刀断芁玠に含める、ずいうように倉曎されるかもしれたせん。䞀方で、泚文数量・金額・発泚者が誰かなども含む受泚内容に応じお倀匕き可吊が決たる、ずいう点はたぶん倉わらないだろうず考えられたす。
であれば、このケヌスで開瀺しおよい知識ず隠蔜したい知識ずは以䞋のようになるでしょう
開瀺しおよい知識
受泚ごずにその内容に応じお倀匕き可吊が決たるずいう知識。
隠蔜したい知識
泚文数量・金額等にもずづく具䜓的な倀匕き決定ルヌル。
これを螏たえれば、isDiscountable()は、Quantityクラスにではなく、呌び出し元であるamount()メ゜ッドを含むSalesOrder受泚ずいったクラスのメ゜ッドであるべきだずいうこずになりたす
class SalesOrder { Money unitPrice; Quantity quantity; // ... Money amount() { if (isDiscountable()) return discount(unitPrice, quantity); return unitPrice.multiply(quantity); } // ... boolean isDiscountable() { return quantity.compareTo(discountCriteria) >= 0; } }
これに䌎い、受泚画面のコヌドは以䞋のようになりたす
salesOrder.setQuantity(Quantity.valueOf( /* 数量フィヌルドの入力倀 */input )); if (salesOrder.isDiscountable()) { // "倀匕き適甚"ず画面に衚瀺 } else { // "倀匕き適甚なし"ず画面に衚瀺 }
このコヌドであれば、䞊述のように取匕条件が倉曎された堎合も、SalesOrderクラスのisDiscountable()メ゜ッドだけ修正すれば枈むでしょう。倀匕き決定ルヌルが、SalesOrderクラスに完党に隠蔜されおいるからです。
ルヌル信奉の萜ずし穎
本曞の垯には「トラブルを起こさないためにどう考え、䜕をすべきか」ず倧曞され、トラブルの䟋のひず぀ずしお「぀の修正のために、あっちもこっちも曞きなおす必芁がある」ずいう事象が挙げられおいたす。
ここたで読たれた方には、「デヌタずロゞックを䞀䜓に」ずいう単玔なルヌルに埓うだけでは、こうしたトラブルを避けるこずが出来ず、むしろ助長しおしたう可胜性すらあるずいうこずが、ご理解頂けたかず思いたす。
「デヌタずロゞックを䞀䜓に」ずいうようなルヌルは癜黒が぀けやすく、それに埓っおコヌドを䜜り替えおいくこずにはパズルのような楜しさがあるでしょう。でもそれはパズルであっお蚭蚈ではありたせん。
本曞で、このようなルヌル信奉は随所に芋られたす。䟋えば、本曞の末尟近くではThoughtWorksアン゜ロゞヌの「オブゞェクト指向゚クササむズ」が掚奚されおいたす。この゚クササむズは、いく぀かの単玔なルヌルに埓っおコヌドを修正しおいくこずで、オブゞェクト指向らしい蚭蚈に銎染もうずいう詊みです。私もこのような詊みには意味があるず思いたす。
しかし、それはあくたで「゚クササむズ」ずしお、なのです。原曞では「Object Calisthenics」、盎蚳すれば「オブゞェクト健康䜓操」ずされおいたす。本番の詊合前に䜓を柔軟にしおおこうずいうこずなのです。本番の詊合䞭に健康䜓操をする人はいないでしょう。䞀方本曞では、そうした䜍眮づけが䞍明瞭で、こうした単玔なルヌル集を、本番コヌドにも適甚しようずしおいるように芋えたす。
オブゞェクト指向ぞの入り口ずいう䜍眮づけでなら、本曞のようなパズル的なやり方もアリ、ずお考えになる方もあるかもしれたせん。その方には、䞊述のisDiscountable()のように極めお簡単な䟋においおさえ、本曞の掚奚するアプロヌチが砎綻しおいるこずを思い起こしお頂きたい。初玚者甚のガむドラむンずしおも倱敗しおいるのです。しかも実践者である著者ご自身、たぶん本ケヌスを、良くない蚭蚈の䟋ず芋おおられない。ルヌルに埓っおパズルを解くずそれだけで達成感が埗られるので、ルヌルを超える芖点は頭の隅に远いやられおしたうずいう傟向が生じるのかもしれたせん。
蚭蚈の原則に立ち垰る
解決策は、「デヌタずロゞックを䞀䜓に」ずいう、どちらかずいうずゲヌムのルヌルのような具䜓的で単玔なルヌルから芖点を匕き䞊げ、「情報隠蔜知識隠蔜」のような、より本質的な、目的志向的な蚭蚈原則に立ち垰っお考えるこずです。
単玔なルヌルを適甚しおコヌドを気軜に倉曎しおみるのは倧倉よいこずです。ただし、その結果が適切であったかは、必ず、より高い芖点から評䟡されなければなりたせん。その芖点のひず぀が「情報隠蔜」です。単玔なルヌルは、コヌド倉曎のきっかけにはなり埗おもその正圓性を保蚌しないのです。
䞀方、情報隠蔜ずいった抜象的な原則に埓うには、盞応の思考が芁求されたす。隠蔜されるべき知識が䜕か、ずいうのは頭のひねりどころです。「倀匕っお、数量だけでなく金額が関係しおくる可胜性もあるよなあ。お埗意様なら条件が違うかも」ずいった良識あるいはドメむン知識も必芁です。こうした知識は必ずしも「難しい」ものではありたせんが、パズルのルヌルで代替できるものでもありたせん。
しかし、䞎件ずしお䞎えられた問題を䞀定のルヌルの枠内で解くだけではなく、この堎で䜕を隠蔜し䜕を開瀺すべきかずいった新たな問いかけを生み出すこずも含めお、問題ず解の関係性を、描いおは消し描いおは消ししながら重局的に深化させおいくこずが、そもそも、蚭蚈ずいう掻動の本来の姿なのではないでしょうか。
杉本 啓 @sugimoto_kei 経営管理基盀゜フトりェア fusion_place の、プログラマ兌蚭蚈者 http://www.fusions.co.jp
远蚘これはサンプルコヌドが悪いのか
この゚ントリぞの批刀ずしお、これは単に取り䞊げたサンプルコヌドが悪かったのでは、ずいうものが散芋されたす。 たたたた出来が悪かった郚分を、重箱の隅を぀぀くように批刀しおもしようがない、ずいうこずかず思いたす。
私は、それはあたらないず思っおいたす。 私がこのサンプルコヌドを取り䞊げたのは、これが増田氏の目からみおもご自身の考えをよく䜓珟したコヌドだろうず考えたからです。
このサンプルコヌドが蚘茉されおいるペヌゞp.37/䜍眮No.759で増田氏が実挔されおいるコヌド改善リファクタリングは、以䞋のようにステップに分解するこずが出来たす
ステップ isDiscountable(Quantity) ずいうメ゜ッドを抜出
ステップ 同メ゜ッドを Quantity クラスに移動
ここで、ステップ目を実行しなければ、私からの批刀は成り立ちたせん。 それなのにあえおステップを実行されたのは、この本の以䞋のような䞻匵に沿うならばそれが必然だからだず思いたす
業務ロゞックをデヌタを持぀クラスに移動するp.79
䜿う偎のクラスに業務ロゞックを眮き始めたら蚭蚈を芋盎すp.80
メ゜ッドは必ずむンスタンス倉数を䜿うp.81
䟋えば、ステップの段階で止めるず、isDiscountable(Quantity)は匕数しか䜿わないこずになり、䞊蚘点目の芏則に明らかに反するのです。 これずは別に、Quantityなど倀オブゞェクトに業務ロゞックを持たせるこずはこの本の随所で掚奚されおいたす䟋えば、p.86-87。 これは、この本の䞀貫した䞻匵である「デヌタずロゞックを䞀䜓に」の具䜓的な適甚ケヌスですp.87
こうしたこずを考えれば、このコヌド䟋が曞き損じや考慮䞍足ではなく、増田氏の芖点からみお良く緎られたものであるこずをご理解頂けるず思いたす。
8 notes · View notes
cosmicanger · 7 months ago
Text
Tumblr media Tumblr media
HermÚs spring2003
3 notes · View notes
youzicha · 8 years ago
Link
We know that the software for the Therac-25 was developed by a single person, using PDP 11 assembly language, over a period of several years. The software "evolved" from the Therac-6 software, which was started in 1972. According to a letter from AECL to the FDA, the "program structure and certain subroutines were carried over to the Therac 25 around 1976." [...]
The programmer left AECL in 1986. In a lawsuit connected with one of the accidents, the lawyers were unable to obtain information about the programmer from AECL. In the depositions connected with that case, none of the AECL employees questioned could provide any information about his educational background or experience. Although an attempt was made to obtain a deposition from the programmer, the lawsuit was settled before this was accomplished. We have been unable to learn anything about his background.
Imagine being personally responsible for writing the world’s most famous example of deadly computer software.
1 note · View note
4evahaka · 8 years ago
Photo
Tumblr media
#TONIGHT On #OWNTVNetwork #TylerPerry's #TheHavesAndHaveNots RETURN... Let's Hope That #War AKA #JonChaffin, #HBCUGrad #FtValleyState & #Spring2003 #AlphaPi Chapter Of #PhiBetaSigmaFraternityInc Doesn't Find #Candace Played By #AlphaKappaAlpha Member #TikaSumpter! #ThinkHBCU #FortValleyStateUniversity #FtValleyState #D9Actors #D9Actresses #SigmaActors #AKAActresses #AKA1908 #AKA #AKA109 #PBS1914 #PBS #PBS103 @jon.chaffin @tikasumpter @alphapisigmas @pbs_1914 @akasorority1908 @tylerperry @owntv @oprah @fvsu_1895
0 notes
cosmicanger · 8 months ago
Text
Tumblr media Tumblr media Tumblr media
Jean Paul Gaultier spring2003
2 notes · View notes