Sunday, December 29, 2019
Analysis of Toni Morrisonââ¬â¢s Song Of Solomon Essay
Analysis of Toni Morrisonââ¬â¢s Song Of Solomon When someone looks up at a bird they see something soaring through the sky free from the worldââ¬â¢s troubles. Through out manââ¬â¢s history they have been trying to find a way to be as free as birds and learn to fly. Unfortunately it has been an unsuccessful feat for man to accomplish. Although man has never really been able to fly on their own, they are able to fly with the help from a little machinery and ingenuity. Macon Dead Jr, or milkman, the nickname he adopted because he nursed from his mother, the protagonist of Song Of Solomon by Toni Morrison, had been trying to fly all of his life. But until he discovers his familyââ¬â¢s history and his self-identity he unable to discover the secret that hasâ⬠¦show more contentâ⬠¦Milkman craves to find out where he really fits in the world and find himself. By him getting rid of his burdens he believes that he will be able. Thus through his venture to learn to fly he learns a lot more about himself and the world in gener al. Family has an affect on everyone, no matter how they feel towards them, or even if they donââ¬â¢t want them to. In Milkmanââ¬â¢s case family helps him to finally realize who he is and helpââ¬â¢s him find out how to be free as a bird, and learn to fly. While in Sharlimar Milkman discovers that one of his forefathers, Solomon, flew back to Africa and tried to take Jake, Milkmanââ¬â¢s grandfather, with him, but dropped him. Solomon was a Slave and like milkman felt he couldnââ¬â¢t survive without his rightful freedom. In order to get this freedom he flies back to Africa, his homeland. Milkman is a lot like his forefather, Solomon, in the since that he was looking for freedom, and just wanted to go where he felt he belonged. Both men are willing to leave everyone behind, including the women who love them, to find this freedom. By them not being free, they are unable to find themselves, or their true place in the world. Although Milkman doesnââ¬â¢t realize it until the e nd, his familyShow MoreRelatedAnalysis Of Milkman In Toni Morrisons Song Of Solomon1606 Words à |à 7 Pages In Chapter 12 of Toni Morrisonââ¬â¢s Song of Solomon, Milkman makes an offhand comment on the children playing the game depicting his familyââ¬â¢s history, reporting: ââ¬Å"The boy in the middleâ⬠¦ (it seemed always to be a boy) spun around with his eyes closedâ⬠¦ pointingâ⬠(Morrison 299). Like the boy at the center of the circle, Milkman blindly points his attention and ââ¬Å"hogââ¬â¢s gutâ⬠in the direction of the women around him, causing them nothing but pain (216). His behavior is symptomatic of the possessive masculinityRead MoreEssay on Themes in Song Of Solomon2113 Words à |à 9 PagesToni Morrison is one of the most talented and successful African-American authors of our time. Famous for works such as The Bluest Eye, Sula, and Beloved, Morrison has cultivated large audiences of all ethnicities and social classes with her creative sty le of writing. It is not Morrisonââ¬â¢s talent of creating new stories that attracts her fans. In contrast, it is her talent of revising and modernizing traditional Biblical and mythological stories that have been present in literature for centuries.Read More Essay on Flight in Song of Solomon1579 Words à |à 7 PagesTheme of Flight in Song of Solomon à Clearly, the significant silences and the stunning absences throughout Morrisons texts become profoundly political as well as stylistically crucial. Morrison describes her own work as containing holes and spaces so the reader can come into it (Tate 125), testament to her rejection of theories that privilege j the author over the reader. Morrison disdains such hierarchies in which the reader as participant in the text is ignored: My writing expects, demandsRead MoreAnalysis Of The Bluest Eye1555 Words à |à 7 Pagesbe a victim of sexual assault but also, the punishment of the offender. Toni Morrison, The author of The Bluest Eye, a victim of segregation, deals with sexual assault and segregation in her book. Chole Anthony Wofford, who goes by the name of Toni Morrison when writing her books, was born in Lorain, Ohio on February 18, 1931. Her father had several jobs to support their family, while her mother worked as a domestic worker. Toni lived in an integrated neighborhood. Howeve r, she did not become awareRead MoreBiblical Names In Toni Morrisons Song Of Solomon1574 Words à |à 7 Pagesnames in the world, and they are all biblical names. Names from the Bible are also found in many works of literature, like Toni Morrisonââ¬â¢s Song of Solomon, a coming of age story about a young man during the mid twentieth century. The reader is introduced to multiple characters with biblical names, which correspond to the charactersââ¬â¢ personalities. In the book Song of Solomon, the characters take on the role of their biblical names. Reba, Milkmanââ¬â¢s mother, can most closely be associated with RebeccaRead More A Comparison of Christian Symbols in Song of Solomon, Sula, and Beloved2397 Words à |à 10 PagesAlthough religion does not exist as a central theme in Toni Morrisonââ¬â¢s work, it does set premise for a richly intertwined web of symbolism. Morrisonââ¬â¢s novels focus on the lives of characters acting in the present day or recent past. For African Americans, events of the past are a crucial facet of culture as they seek to remember their history, the most influential of these events reaching far back into the years of slavery. Historians argue that for incoming slaves, Christianity offered a religiousRead MoreLiterary Analysis Of Recitatif1135 Words à |à 5 PagesLiterary Analysis Paper: ââ¬Å"Recitatifâ⬠by Toni Morrison Many authors write fictional novels about historical events. A common topic written about is the racial integration between African Americans and whites during the 1950ââ¬â¢s. Although the short story ââ¬Å"Recitatifâ⬠explicate many different themes, the central topic of Morrisonââ¬â¢s writing is about racism. Throughout the story, the author expresses examples of hatred between black and white races at the shelter, the different encounters they have, andRead MoreSong Of Solomon Character Analysis1415 Words à |à 6 Pages Song of Solomon Topic #5 LAP Abid Ahmad Abid Ahmad 1 The names given to the characters in a book are in many cases the poetic insight to their role and their traits. In this manner, a characterââ¬â¢s name can sometimes tell the reader more about them than any specific sentence in the book. This is very much the case with Toni Morrisonââ¬â¢s Song of Solomon. The characters in the book have names that directly correlate with their role and individual traits. This is the caseRead MoreSong of Solomon: Ruth and Macons Marriage1425 Words à |à 6 PagesAnalysis of Macon Dead II and Ruthââ¬â¢s Marriage and Relationship in Song Of Solomon The abandonment and betrayal of women has been seen throughout history and novels, including Song of Solomon, by Toni Morrison. Morrison uses the relationship of Macon Dead II and Ruth to express this in her book. Morrison also expresses how women are to reliant on their men for support, she uses Pilate to show this. Macon Dead II and Ruth are married and the parents of Milkman, the protagonist of the novel. The novelRead MoreEssay on Lifelong Learner837 Words à |à 4 Pagesquestioning, and thinking had led me without question to more: acceptance to college. Studying English and Anthropology allowed me to learn about worlds, both real and imagined. More importantly, Amherst helped me develop a stronger framework for analysis and emphasized the intersections of several fields of study. Some of my most memorable days while as an undergrad student were those when a tangential detail in one class connected to another in a subtle, but incredible way or when simply finishing
Saturday, December 21, 2019
Nestle Operating in a Global Economy Essay examples
Nestle is a large company with over 150 years of history. The company deals with global production and competes around the world in an effort to achieve steady growth and profit. Competing in the global economy requires dealing with many challenges to meet production goals and market products to different cultures. Nestle also markets to third world countries that need nutritious food at a reasonable price. The company is a market leader in numerous product lines that have provided a solid foundation for sales and profit. Nestle has strong brand recognition that provides a competitive advantage to get into new markets and expand in existing markets. Operating in the global market means embracing numerous opportunities whileâ⬠¦show more contentâ⬠¦Acquiring raw material and product distribution were difficult during this time period, but the war also created a new demand for dairy products. The company purchased several factories in the United States and world production had more than doubled since 1914 (Nestle). As customers returned to fresh milk rather than condensed or powered milk, Nestle recorded its first loss and was impacted by the economic slowdown following the war. Management responded quickly by streamlining operations and reducing the companyââ¬â¢s outstanding debt. They also expanded the production line and chocolate became the companyââ¬â¢s second most important activity (Nestle). World War II also had a significant impact on the development of the company. Profits dropped from $20 million in 1938 to $6 million in 1939. Neutral Switzerland became increasingly isolated through the war in Europe and the company transferred many of its executives to Stamford, Connecticut (Nestle). Although initially hurt by the war, sales dramatically increased to support the war effort and sales more than doubled from 1938 to 1945. The company continued to mature through the remainder of the 20th century and expanded beyond its typical foo d product line. Nestle took the first step outside the food industry through a venture into cosmetics and an agreement with Lââ¬â¢Oreal. Other acquisitions included iceShow MoreRelatedSwot Analysis Of Nestle1302 Words à |à 6 PagesExternal Environment General Environment Overall, the general environment for Nestlà © is very good. Considered the worldââ¬â¢s largest packaged food and beverage manufacturer in the world, Nestlà © operates in 12 different segments of the consumer products market, including baby foods, bottled water, cereals, candy, coffee, prepared and prepackaged foods, dairy, drinks, food service, healthcare and nutrition, ice cream and pet care. Its stable of brands includes some of the best-known names in the industryRead MoreUnilever V Nestle1235 Words à |à 5 PagesToday we live in a global economy in which the time taken for people to move between continents has been significantly reduced and in which Internet and other connections make instant connections possible. Businesses and organisations now have to recognise that they now operate in a global market place and to develop appropriate strategies. A global strategy is an organisational plan that takes into account these new global realities. Both Nestle and Unilever have developed global distribution andRead MoreNestle - Global Strategy Case1650 Words à |à 7 Pages1.What is the companyââ¬â¢s strategy with regard to business development in emerging markets? Does this strategy make sense? From the NESTLE : GLOBAL STRATEGY case, it can be seen that Nestle generally operates worldwide with the strategy of customization rather than globalization. It moves into consumer markets by using Niche market strategy to become the market leader in each of the niches. It mainly focuses on European markets, which make up 70 percent of its sales. As mentioned, these markets areRead MoreNestleââ¬â¢s Sustainable Growth in Mature Market1512 Words à |à 7 Pagessustainable growth in mature market The company establishment Nestle was first founded by Henri Neslte in the 1860s by developing and producing food products for babies who could not adapt motherââ¬â¢s milk. Following the success in baby food products, Henri incorporated with an Anglo-Swiss condensed milk company to develop dairy products, especially for government supply in World War I. High sensitive and quick responding to the demand of consumer, Nestle continued to create and develop new product mix to cannedRead MoreGlobalization And The Development Of Transnational Corporations977 Words à |à 4 Pagestransnational corporations. Nestle exemplifies a transnational corporation established through globalisation, in both developed and developing countries, maximising resources and facilities to further the growth of the company. Globalisation has opened up borders between all continents. Transnational companies, such as Nestle, have thus required cheaper labour, to successfully obtain resources and remain competitive. Furthermore the ext ent to which transnational corporations like Nestlà © reach geographicallyRead MoreMarketing Development : Apple Diversification Strategy And Nestle As An Example Of Market Penetration Strategy1448 Words à |à 6 PagesUsing this strategy, companies try to make effort on ââ¬Å"customers in current segment but not currently served and customers in new segmentsâ⬠(Class Slides). In this project, we are going to analyze Apple as an example of diversification strategy and Nestle as an example of market penetration strategy. Apple Diversification Strategy Apple is a very well-known international corporation dealing with technological line projects. According to its annual report, Apple is head quartered in Cupertino, CaliforniaRead MoreNestle: Macro Environment and Micro Environment Analysis1003 Words à |à 5 PagesAnalysis of Nestle: Nestle in the Global Environment: Nestle operates in over 130 countries and in order to understand the business environment they operate in analysis on the external factors that lie outside the control of Nestle has to be conducted (Grant et al. 2011, 101). The tool tasked with conducting an external analysis of the macro environment is PEST while the external micro environment will be analysed with the help of Porters Five Forces. However it is worth mentioning that Nestle is notRead MoreNescafe Vision Mission Goal1652 Words à |à 7 PagesNescafà ©Ã is a brand ofà instant coffeeà made byà Nestlà ©. It comes in many different product forms. The name is aà portmanteauà of the words Nestlà © and cafà ©.à Nestlà ©s flagship powdered coffee product was introduced inà Switzerlandà on April 1, 1938 after being developed for sevenà or eightà years byà Max Morgenthalerà and Vernon Chapman. http://www.nescafe.com/coffee_history_en_com.axcms Background The dairy products at Nestlà © are a big driving force for the growth of the companys sales. With the healthRead MoreMarketing Strategy : A Competitive Advantage1712 Words à |à 7 Pagesenterprises find them selves operating in a global market. A business must clearly understand the value added by its product or service to capitalize on their competitive advantage globally. It is useful to consider the internationalization-responsiveness (IR) framework when discussing the key differences between global, multidomestic and transnational strategies. (2) The framework compares the strengths and weaknesses of each strategy relative to the goal of global integration or local responsivenessRead MoreNestle Case Study1706 Words à |à 7 PagesTopic: Nestlà © Bends Under Activist Pressure Explanation of issues The articles have been focused on Nestlà ©Ã¢â¬â¢s performance for its different kinds of products that have been declined its target profits. Therefore, Nestle has set up a margin goal that will help the worldââ¬â¢s largest food package company to regain its expecting profits. It is mentioned that, the company has slowed down its growth in the different marketplace in which some products need to improve its performance according to analysis
Friday, December 13, 2019
Love Conquers All Free Essays
Love conquers all, let us too surrender to love. â⬠Love could be described as insanity and outrageous to those who know it or even despise it. Love conquers all. We will write a custom essay sample on Love Conquers All or any similar topic only for you Order Now If the obstacles be physical, which we cannot change ourselves, then our minds will mold as we see fit, even if it means going insane. Love conquers all because, being only one true love, it has no conditions. After getting a taste of love we will stray, only to come back for more, for itââ¬â¢s what our souls yearn for. Thus, conquering the obstacles and abilities Of life. Love conquers the views of society. During the Civil Rights Movement, the ââ¬Å"Blacksâ⬠or African-American people were being discriminated in America and other countries, it became obvious to a lot of African-Americans that violence against violence was getting them no where. Blacks loved their families, friends, countries, and white people. They were going to stand up for their rights as humans, but to do this they had to make obvious what the whites were doing to the blacks. African-Americans let themselves be beat and murdered. They protested by not going to places they were allowed or/and ongoing to places they were ââ¬Ët allowed to go to. It took a while, and it still goes on today, but the labels and views of society have been ever so more lifted off their shoulders. Love conquers all, including time. In the movie Maleficent, the fairy whom had lost her wings to her childhood friend and romantic lover, had cursed his newborn baby girl as revenge. After taking care of the baby girl, Aurora, from a distance, Maleficent thought she hated this child. As the girl grew, Maleficent grew in her love for Aurora. Finally, when the curse had taken place, Maleficent knew what she had done long ago now affected her and she devastated by this. When all hope seemed lost, she herself had lifted the curse from Aurora because of her sincerity of repentance and love for Aurora. At first Maleficent had thought there was no such love without conditions, but even though it took a long period of time she still learned there was such a thing and became a happy fairy with her wings once again. Love conquers all, even the forces of nature and disease. Most of these may seem impossible to a lot of people. Jesus, the Son of God, had done lots of oracles. But He said, ââ¬Å"Your faith has saved you. â⬠Love comes with great faith in God. Jesus had died for our sins because of His great love for us and because he is Love. At the Last Supper a miracle occurred done by Jesus. He turned wine into His Blood and bread into His Body and said, ââ¬Å"DO this in remembrance of me. â⬠Thus, Catholics go to mass and relive this miracle of salvation. There have been times when the Blood or/and Body of Christ has been stolen and found in later years. When found, research had been done on the Blood or/and Body of Christ and concluded in astounding results. There was actual blood and body pieces still intact that described a tortured male just as Jesus had been tortured. There have been people who have prayed to God through the intersection of Mary by praying the Rosary. Catholics and Non-Catholics, have prayed for others who have had a disease, for example cancer, to be cured. Sometimes their prayers werenââ¬â¢t answered overnight or at all but these people had faith in God and dedicated themselves to the praying the Rosary. Their sincerity and faith took a toll and their prayers answered, the cancers cured, and as mom response from Mary, the people could smell roses eater their prayers had been answered or even if they werenââ¬â¢t answered. Love conquers all. Whether it be the views of society, time, the forces of nature, diseases, and-ourselves. But, we must understand that suffering is part of love as long as we roam this earth. All of us have tried to avoid suffering. Has it not become obvious that our love is strongest at what seems the most difficult times? God refines us like silver in the fire Of our sufferings. Fall in love with God and love will truly conquer all. How to cite Love Conquers All, Papers
Thursday, December 5, 2019
Potential Causes of Medication Errors â⬠Free Samples to Students
Question: Discuss about the Potential Causes of Medication Errors. Answer: Introduction A medication error is a preventable event which may occur because of inappropriate use of medication while the medication is under the healthcare professional control. According to Blank (2011), the medication error is the commonly reported error in the emergency department with most of the mistakes happening during the administration phase manegement. The purpose of this study is to identify practices that may improve and reduce the dosage administration errors that occur and may lead to adverse effects on the patient (Flynn, 2012). The study took three months where 75% out of the 127 nurses participated in the research, and the method that got used in the study was educational intervention. On the other hand, the Do not Interrupt approach to medication refers to the interrupts that occur when nurses are administrating medication. The study took eight weeks where 227 nurses participated in the study, and they administered 4781 medications. Therefore, the Back to Basic and Do not Int errupt approaches to medication are directly related because when interruption of the nurse occurs when she is administering medicine, this may lead to a medication error. The purpose of the Back to Basic approach study is to reduce the medication administration errors that occur often in the emergency department. Medication errors can get classified into different categories which include action-based slips, knowledge-based mistakes and memory based lapses. On this study, the Back to Basics' study involved an examination of 95 nurses based on their knowledge on medication administration procedures, the reflection of their behaviors towards recommended medication practices and their medication administration errors. The study was conducted in three months by assessment through tests, surveys and observations on the nurses' chart reviews and voluntary error reports (Blank, 2011). In the Back to Basics approach to medication, the pre-test conducted reported that 69% of the nurses achieved perfect scores while 91% achieved perfect scores in the post-test. In the post-survey, the clinicians in their specific proportions said they followed the recommended p ractice most of the time which increased in 8 of the ten survey questions. The results, however, showed that there was no significant change from the survey conducted (Blank, 2011). Moreover, the review of charts revealed little difference in total medication errors (25% and 24% respectively). It, therefore, means that the nurses scored 299 during the pre-test and 295 during the post-test. During the voluntarily reported medication errors dropped from 1.28 to 0.99 per 1000 patients (blank, 2011). Critique of the Back to Basic Approach to Medication The sample size used for the research was sufficient because majority of the nurses participated in the study where 75% out of 127 nurses participated. The time taken for the study was sufficient because it took 3 months to get the results of the study. Educational intervention got used as the dependent method for the study since it provides nurses with the required knowledge of the medication administration practices. The method of education is however not sufficient in delivering the change necessary in medication administration practices. Hence, the survey and the chart review are classified as the internal validity of the study because they provide the required emphasis that are made by the research management. Furthermore, External validity is the general method that got used for the whole study which is the educational intervention (Blank, 2011). On the other hand, the aim of the Do not Interrupt study was to divert interruptions, educate clinicians and patients and to give reminders regularly and reduce the number of interrupts that happen when nurses are administering medication. This particular study was carried out in a major teaching hospital in Adelaide (Australia) where four random wards were selected to take part in the study while the control wards got blinded in the intervention. Furthermore, the period chosen for the study was two months (8weeks), and the methods used for this approach were administering vests to the clinicians, the general survey of the participating nurses and giving educational lessons to the patient and nurses (Westbrook, 2017). After the elapse of the study period, the Do not Interrupt approach yielded that 227 nurses were administering 4781 medications. The nurses experienced 57 interruptions per 100 medication administrations, whereby 89.7% were unrelated to the task at hand (Westbrook, 2017 ). The four wards experienced a significant reduction in non-medication related interruptions from 50 interruptions per 100 medication administrations to 34 disruptions per 100 medication administrations. Despite the decrease in interruptions, the post-study survey results stated that the intervention ward nurses found the vests to be time consuming and bulky; therefore only 48% seconded the idea becoming hospital policy (Westbrook, 2017). The sample size of the research was sufficient because it comprised of 227 nurses who were able to administer 4781 medications during the eight weeks of the research. Furthermore, the time taken for the research was enough because it took 2 months for the study to get completed. One can identify the internal validity of the study as the use of vests during medication administration, the putting of strategic measures aimed at preventing interruptions and the education of nurses and patients. The external validity of the study was the randomization of four wards that were supposed to be used in the research. The method was however not seen as sufficient because only 48% of the nurses applauded it to become a hospital policy management (Westbrook, 2017). Comparison of the Two Approaches to Medication These two approaches of medication go hand in hand in that through the reduction of the number of interruptions during operations; medical personnel can focus solely on medication administration which eventually reduces the medication errors. According to Blank (2011), the Back to Basics approach improves the nurses knowledge of the recommended medication administration practices. Inadequate knowledge, incomplete information about clinical characteristics and the lack of previous patient records can result in prescribing inappropriate medications. For instance, some infants died to an overdose of heparin drugs due to the wrong labeling of the medicine and the bad packaging of the medicine which resulted to the medication error that caused the death of the infants (Anderson, 2010). Another example is when the clinician prescribes penicillin without having established whether the patient is allergic or not. This means that the Do not Interrupt approach of medication is the most signifi cant compared to the Back to Basic approach because it often happens before the medication error occurs. This means the dosage error must occur for the medication error to happen which is the Back to Basic error. Moreover, the insufficient nurse experience may lead to medication errors where the nurse does not know the required dosage for a specific drug and this may lead to wrong prescriptions that may be fatal to a patient. Therefore, when the nurse has adequate skill and experience in their particular fields such errors may be avoided because the nurse knows the required dosage a patient should take (Karavasiliadou, 2014). Furthermore, the lack of sufficient protocol regarding the arrival time of medicines to the hospital may lead to late medication administration (Karavasiliadou, 2014). Observations made indicate that the rate at which medication errors get reported as voluntary is low (Aronson, 2009). For instance, when a patient was to be given a dosage of a particular medicin e at nine in the morning, and the medication happens to arrive at eleven, it means that the dosage will happen more than two hours past the correct administration time. Though this may not have severe effects on the patient, the patient may still have minor effects due to the delay of their medication. According to Velo (2009), another factor that can lead to clinical issues is the poor legible handwriting by the nurse when prescribing medication to a patient. The nurse can use abbreviations and not write the required dosage information entirely. This shows that the prescription error must occur for the medication error to happen. This is significant in that the Do not Interrupt which is the prescription error often takes place before the Back to Basic approach happens. The Back to Basic approach is often stated as the medication error. From the article, the two approaches of medication have a relative contribution in the clinical issues that often occur because irregularity must ha ppen during medication administration so as for the medication error to occur. Therefore, the Do not Interrupt approach is the most significant approach to medication because it determines whether the medication error (Back to Basic approach) may take place. Hence, it is essential for the nurses to get regular updates regarding the medication errors that occur within their facility so that they have an understanding of the best ways in which they can administer medication. According to Svitlica (2017), it is crucial when the nurses have an understanding of the errors that occur and the importance of reporting them in case they happen. From these two papers, we can conclude that improved education and improved working conditions may help in reducing the risk of medication errors. References Anderson, P., Townsend, T., CCRN-CMC, C. B. (2010). Medication errors.American Nurse Today, 23-27. Aronson,J.K. (2009) Medication errors: what they are, how they happen, and how to avoid them. QJM: An International Journal of Medicine, Volume 102, Issue 8, 1 August 2009, Pages 513-521,https;//doi.org/10.1093/qjmed/hcpo52 Blank,F.S.J.,Tobin,J.,Macomber,S.,Jaouen,M.,Dinoia,M.,Visintainer,P.(2011).A Back to Basics Approach to Reduce ED Medication Errors. JEN: Journal of Emergency Nursing, 37(2), 141-147.doi:10.1016/j.jen.2009.11.026 Flynn, L., Liang, Y., Dickson, G. L., Xie, M., Suh, D. C. (2012). Nurses practice environments, error interception practices, and inpatient medication errors.Journal of Nursing Scholarship,44(2), 180-186. Karavasiliadou, S., Athanasakis, E. (2014). An inside look into the factors contributing to medication errors in the clinical nursing practice.Health science journal,8(1). Svitlica, B. B., Simin, D., Milutinovi?, D. (2017). Potential causes of medication errors: perceptions of Serbian nurses.International nursing review,64(3), 421-427. Westbrook,J.I.,Ling,L.,Hopper,T.D.,Raban,M.Z.,Middleton,S.,Lehnbom.E.C.(2017).Effectiveness of a Do not interrupt hundled intervention to reduce interruptions during medication administration: a cluster randomized controlled feasibility study Velo G.P, Minuz,P. (2009) -British journey of clinical pharmacology, Medication errors: Prescribing faults and prescription errors. Academic Emergency Medicine 7(11), 1239-1243, 2000
Thursday, November 28, 2019
Sunday, November 24, 2019
Free Essays on Settings In Wuthering Heights
Settings in Wuthering Heights In the novel, Wuthering Heights, Brontà « often sets the scene with imagery depicting settings and weather changes. The setting descriptions are indicative of the charactersââ¬â¢ traits. This is apparent immediately in the novel when Lockwood questions the title of the house. Lockwood is quoted spinning the word ââ¬Å"Wutheringâ⬠in his head. Wuthering is defined as ââ¬Å"being a significant provincial adjective, descriptive of the atmospheric tumult to which its station is exposed to stormy weather.â⬠Lockwood refers to the moors as the station exposed to stormy weather. The moors are mentioned throughout the novel as a setting that brings fierce winds to its inhabitants. The evil and darkness of the characters are foreshadowed by the swampy, stormy bogs. All those who inhabit Wuthering Heights are considerably pervert and have bad intentions, like the constant revenge seeking Heathcliff and Hareton characters. Lockwood notes the eerie chill in the air once he reaches the gates of Wuthering Heights. The very presence of the house makes him ââ¬Å"shiver through every limb.â⬠The iciness of the air surrounds only Wuthering Heights. This conveys the general corruptive nature the characters possess. Heavy snowfall begins immediately after Lockwood enters through the gates. The coldness continues then into the house as Heathcliff shows his inhospitality and lack of concerns for others. Heathcliff offers Lockwood little food or drink as the guest in his house. He extends no helping hand when Lockwood is attacked by his vicious dogs and refuses to send a guide with Lockwood on his journey home. He is stubbornly hesitant to let Lockwood stay the night to avoid the storm even though he has a terrible cold. An essential scene in the storyline occurs when Heathcliff leaves Wuthering Heights. Heathcliff overhears Catherine telling Nelly that she simply cannot marry Heathcliff. His anger dri... Free Essays on Settings In Wuthering Heights Free Essays on Settings In Wuthering Heights Settings in Wuthering Heights In the novel, Wuthering Heights, Brontà « often sets the scene with imagery depicting settings and weather changes. The setting descriptions are indicative of the charactersââ¬â¢ traits. This is apparent immediately in the novel when Lockwood questions the title of the house. Lockwood is quoted spinning the word ââ¬Å"Wutheringâ⬠in his head. Wuthering is defined as ââ¬Å"being a significant provincial adjective, descriptive of the atmospheric tumult to which its station is exposed to stormy weather.â⬠Lockwood refers to the moors as the station exposed to stormy weather. The moors are mentioned throughout the novel as a setting that brings fierce winds to its inhabitants. The evil and darkness of the characters are foreshadowed by the swampy, stormy bogs. All those who inhabit Wuthering Heights are considerably pervert and have bad intentions, like the constant revenge seeking Heathcliff and Hareton characters. Lockwood notes the eerie chill in the air once he reaches the gates of Wuthering Heights. The very presence of the house makes him ââ¬Å"shiver through every limb.â⬠The iciness of the air surrounds only Wuthering Heights. This conveys the general corruptive nature the characters possess. Heavy snowfall begins immediately after Lockwood enters through the gates. The coldness continues then into the house as Heathcliff shows his inhospitality and lack of concerns for others. Heathcliff offers Lockwood little food or drink as the guest in his house. He extends no helping hand when Lockwood is attacked by his vicious dogs and refuses to send a guide with Lockwood on his journey home. He is stubbornly hesitant to let Lockwood stay the night to avoid the storm even though he has a terrible cold. An essential scene in the storyline occurs when Heathcliff leaves Wuthering Heights. Heathcliff overhears Catherine telling Nelly that she simply cannot marry Heathcliff. His anger dri...
Thursday, November 21, 2019
Rhetoric Essay Assignment Example | Topics and Well Written Essays - 1250 words
Rhetoric Assignment - Essay Example Chapmanââ¬â¢s immediate purpose appears to be to delight Americans living in Chicago about crimes in the city and how they can be reduced. He acknowledges the significant reduction of crimes in the city in recent years but still feels the rates are high compared with other cities in the country. Chapman wants some underlying issues such as poverty and racial segregation that contribute to crime to be addressed. He also wants the number of police to be increased so that they can tackle crime efficiently. Chapman effectively fits his message to the circumstance, times and audience. The message fulfills his intentions of creating awareness and fighting crime in Chicago. The initial setting of the article is a column for Chicago Tribune and Creators Syndicate. The immediate community and content of the article are the present high rates of violent crimes in Chicago, which Chapman argues that they have reduced in comparison with the past. According to Chapman, some Chicagoans, especial ly the ones from crime-prone neighborhoods, may not be aware of the large reduction of murders in the city. In the article, Chapman argues that the security has improved in Chicago City in general, but some areas still experience high rates of crime. Chapman uses figurative language such as hyperboles, metaphors, and personification in his article. He seeks to address the misconceptions of homicides and other crimes in the city. His immediate purpose is to inform Chicago residents about crimes in the city and how they can be reduced.
Wednesday, November 20, 2019
An Art review of film Interstellar(20140 Movie Example | Topics and Well Written Essays - 750 words
An Art of film Interstellar(20140 - Movie Review Example The movie succeeds in showing that human beings can be courageous and innovative despite their human frailties. Sci-fi movies are often characterized by inhuman coldness. However, Nolan has made a deliberate attempt to refute this statement. He roots for a futuristic world that is represented by images of pastoral and corn fields. In addition, it alludes to the American Dustbowl aesthetic that followed the Great Depression. There is a deliberate attempt to refer to the old generation. Cooperââ¬â¢s father-in-law (John Lithgow) describes his childhood as one of the most productive eras in the history of humanity (Interstellar 1). The audio-visual cues provide the audience with an anchor in this barren future. Consequently, it forces the audience to forget its present generation and to look at itself in terms of an alternative future (Morgan 1). In the movie, Mathew McCaughey acts as Cooper, a former astronaut who turns to farming an infertile earth. The planet has revolted against humanity. As the central character, Cooper is forced to choose between his family and saving the human race. The dilemma is resolved through his utilitarianism. Consequently, Professor Brand (Michael Caine) of NASA sends him into space (Interstellar 1). His mission is to find a wormhole on the outer sphere of Saturn that the human race can use to search for a new land. One of the most significant things in the film is a close relationship between Cooper and his daughter Murph. The young character is played by three different actors as she progresses through the different life stages. Mackenzie Foy, Jessica Chastain and Ellen Burstyn play as Murph. The relationship between a father and his daughter becomes a significant spectacle of Nolanââ¬â¢s space era. When Cooper decides to leave, the audience sees the pain in both a father and the daughter (Kermode 1). Her inability to forgive her father for leaving serves as a constant reminder of
Monday, November 18, 2019
Human resources Essay Example | Topics and Well Written Essays - 1250 words - 3
Human resources - Essay Example On the other hand, human resource management has previously been defined as the act of managing an organizations workforce and is responsible for attracting, selecting, training, assessing and the rewarding the workers (Price, 2011). The field of human resource management is also responsible for overseeing an organizationââ¬â¢s culture in addition to its leadership as it ensures they comply with the set labor and employment regulations (Aswathappa, 2009). Storye provided numerous dimensions offering various difference points between the concepts of personnel management and human resource management. This paper reviews and discusses some of these dimensions in regards to how they have impacted upon an organizationââ¬â¢s structure and culture. Storye suggested that personnel management and human resource management differ in terms of the nature of existing relations and their impacts upon organizational structures and cultures. According to him, the nature of the relations can be viewed through two different perspectives which are the unitarist and the pluralist views (Storye, 1992). In personnel management, which is pluralist, more focus is laid on individual interests than is laid on the groupââ¬â¢s interest. The relationships that exist between the managements and the employees are merely on contract basis with one party hiring while the other performs duties (Koster, 2007). Alternatively, human resources management follows the unitarist principles with more focus being laid on the groupsââ¬â¢ interest (Aswathappa, 2009). The organizationââ¬â¢s culture and structures under the human resources management enables the sharing of missions and visions between the workers and the management. These missions and visions are associated to the goals of the organization and help in fulfilling the organizationââ¬â¢s and employees mutual interests (Storye, 1992). This implies that the organizations wants are effectively satisfied by the employees whereas the employeesââ¬â¢ needs are efficiently satisfied by their organization (Brumfitt et al, 2001). However, under personnel management, the top management of an organization yields utmost power with most of it being centralized (Storye, 1992). The top level managers have absolute power in the process of making decisions with their personnel managers not being allowed to air their views or take part in these processes (Koster, 2007). This impacts the organizations culture and structures since the employees may not have appropriate channels through which they can air their grievances or views regarding the organizations operations (Aswathappa, 2009). The human resources department allows for the decentralization of the control of an organization with power being shared out between the lower and middle level managements. This facilitates the empowerment of employees and the human resource managers within the organization as they play vital roles in making decisions that are shared and collective (Price, 2011). The process is done for the benefit of both the organizations employees and the management (Brumfitt et al, 2001). In other words, the human resource managements focus more on the approaches known as TQM which implies that an organizations management and its employees have shared authority and power
Friday, November 15, 2019
Concepts of Object Oriented Techniques with OO Issues
Concepts of Object Oriented Techniques with OO Issues Abstract Object-oriented frameworks offer reuse at a high design level promising several benefits to the development of complex systems. This paper sought to 1) define the concepts of object oriented techniques in addition with the OO issues, development techniques and concepts of object oriented programming, it is also introduced the UML as an ordinary and key tool for object-oriented design, additionally 2) we look further into the frameworks from the perspective of object-oriented techniques. In this section, it is aimed to define a reasonable promise between object oriented technology and frameworks. At the end, some future horizons for object oriented technology and frameworks are presented. I. Introduction Computing power and network bandwidth have increased dramatically over the past decade. However, the design and implementation of complex software remains expensive and error-prone. Much of the cost and effort stems from the continuous re-discovery and re-invention of core concepts and components across the software industry. In particular, the growing heterogeneity of hardware architectures and diversity of operating system and communication platforms makes it hard to build correct, portable, efficient, and inexpensive applications from scratch. Object-oriented (OO) techniques and frameworks are promising technologies for reifying proven software designs and implementations in order to reduce the cost and improve the quality of software. A framework is a reusable, semi-complete application that can be specialized to produce custom applications [19]. In contrast to earlier OO reuse techniques based on class libraries, frameworks are targeted for particular business units (such as dat a processing or cellular communications[1]) and application domains (such as user interfaces or real-time avionics). Frameworks like MacApp, ET++, Interviews, ACE, Microsofts MFC and DCOM, JavaSofts RMI, and implementations of OMGs CORBA play an increasingly important role in contemporary software development. II. Object oriented concepts and techniques History The concept of objects and instances in computing had its first major breakthrough with the PDP-1 system at MIT which was probably the earliest example of capability based architecture. Another early example was Sketchpad created by Ivan Sutherland in 1963; however, this was an application and not a programming paradigm. Objects as programming entities were introduced in the 1960s in Simula 67, a programming language designed for performing simulations, created by Ole-Johan Dahl and Kristen Nygaard of the Norwegian Computing Center in Oslo. (They were working on ship simulations, and were confounded by the combinatorial explosion of how the different attributes from different ships could affect one another. The idea occurred to them of grouping the different types of ships into different classes of objects; each class of objects being responsible for defining its own data and behavior.) Such an approach was a simple extrapolation of concepts earlier used in analog programming. On ana log computers, mapping from real-world phenomena/objects to analog phenomena/objects (and conversely), was (and is) called simulation. Simula not only introduced the notion of classes, but also of instances of classes, which is probably the first explicit use of those notions. The ideas of Simula 67 influenced many later languages, especially Smalltalk and derivatives of Lisp and Pascal. The Smalltalk language, which was developed at Xerox PARC[2] (by Alan Kay and others) in the 1970s, introduced the term object-oriented programming to represent the pervasive use of objects and messages as the basis for computation. Smalltalk creators were influenced by the ideas introduced in Simula 67, but Smalltalk was designed to be a fully dynamic system in which classes could be created and modified dynamically rather than statically as in Simula 67. Smalltalk and with it OOP were introduced to a wider audience by the August 1981 issue of Byte magazine. In the 1970s, Kays Smalltalk work had influenced the Lisp community to incorporate object-based techniques which were introduced to developers via the Lisp machine. Experimentation with various extensions to Lisp (like LOOPS and Flavors introducing multiple inheritance and mixins), eventually led to the Common Lisp Object System (CLOS, a part of the first standardized object-oriented programming language, ANSI Common Lisp), which integrates functional programming and object-oriented programming and allows extension via a Meta-object protocol. In the 1980s, there were a few attempts to design processor architectures which included hardware support for objects in memory but these were not successful. Examples include the Intel iAPX 432 and the Linn Smart Rekursiv. Object-oriented programming developed as the dominant programming methodology during the mid-1990s, largely due to the influence of Visual FoxPro 3.0 or possibly C++. Its dominance was further enhanced by the rising popularity of graphical user interfaces, for which object-oriented programming seems to be well-suited. An example of a closely related dynamic GUI library and OOP language can be found in the Cocoa frameworks on Mac OS X, written in Objective-C, an object-oriented, dynamic messaging extension to C based on Smalltalk. OOP toolkits also enhanced the popularity of event-driven programming (although this concept is not limited to OOP). Some feel that association with GUIs (real or perceived) was what propelled OOP into the programming mainstream. At ETH ZÃ ¼rich, Niklaus Wirth and his colleagues had also been investigating such topics as data abstraction and modular programming (although this had been in common use in the 1960s or earlier). Modula-2 (1978) included both, and their succeeding design, Oberon, included a distinctive approach to object orientation, classes, and such. The approach is unlike Smalltalk, and very unlike C++. Object-oriented features have been added to many existing languages during that time, including Ada, BASIC, Fortran, Pascal, and others. Adding these features to languages that were not initially designed for them often led to problems with compatibility and maintainability of code. More recently, a number of languages have emerged that are primarily object-oriented yet compatible with procedural methodology, such as Python and Ruby. Probably the most commercially important recent object-oriented languages are Visual Basic.NET (VB.NET) and C#, both designed for Microsofts .NET platform, and Java, developed by Sun Microsystems. VB.NET and C# both support cross-language inheritance, allowing classes defined in one language to subclass classes defined in the other language. Just as procedural programming led to refinements of techniques such as structured programming, modern object-oriented software design methods include refinements such as the use of design patterns, design by contract, and modeling languages (such as UML). The term OOPS, which refers to an object-oriented programming system, was common in early development of object-oriented programming. III. Fundamental concepts and features Class Defines the abstract characteristics of a thing (object), including the things characteristics (its attributes, fields or properties) and the things behaviors (the things it can do, or methods, operations or features). One might say that a class is a blueprint or factory that describes the nature of something. For example, the class Dog would consist of traits shared by all dogs, such as breed and fur color (characteristics), and the ability to bark and sit (behaviors). Classes provide modularity and structure in an object-oriented computer program. A class should typically be recognizable to a non-programmer familiar with the problem domain, meaning that the characteristics of the class should make sense in context. Also, the code for a class should be relatively self-contained (generally using encapsulation). Collectively, the properties and methods defined by a class are called members. Object A pattern (exemplar) of a class. The class Dog defines all possible dogs by listing the characteristics and behaviors they can have; the object Lassie is one particular dog, with particular versions of the characteristics. A Dog has fur; Lassie has brown-and-white fur. Instance One can have an instance of a class; the instance is the actual object created at runtime. In programmer jargon, the Lassie object is an instance of the Dog class. The set of values of the attributes of a particular object is called its state. The object consists of state and the behavior thats defined in the objects class. More on Classes, Metaclasses, Parameterized Classes, and Exemplars There are two broad categories of objects: classes and instances. Users of object-oriented technology usually think of classes as containing the information necessary to create instances, i.e., the structure and capabilities of an instance is determined by its corresponding class. There are three commonly used (and different) views on the definition for class: A class is a pattern, template, or blueprint for a category of structurally identical items. The items created using the class are called instances. This is often referred to as the class as a `cookie cutter' view. As you might guess, the instances are the cookies. A class is a thing that consists of both a pattern and a mechanism for creating items based on that pattern. This is the class as an `instance factory' view; instances are the individual items that are manufactured (created) using the classs creation mechanism. A class is the set of all items created using a specific pattern. Said another way, the class is the set of all instances of that pattern. We should note that it is possible for an instance of a class to also be a class. A metaclass is a class whose instances themselves are classes. This means when we use the instance creation mechanism in a metaclass, the instance created will itself be a class. The instance creation mechanism of this class can, in turn, be used to create instances although these instances may or may not themselves be classes. A concept very similar to the metaclass is the parameterized class. A parameterized class is a template for a class wherein specific items have been identified as being required to create non-parameterized classes based on the template. In effect, a parameterized class can be viewed as a fill in the blanks version of a class. One cannot directly use the instance creation mechanism of a parameterized class. First, we must supply the required parameters, resulting in the creation of a non-parameterized class. Once we have a non-parameterized class, we can use its creation mechanisms to create instances. In this paper, we will use the term class to mean metaclass, parameterized class, or a class that is neither a metaclass nor a parameterized class. We will make a distinction only when it is necessary to do so. Further, we will occasionally refer to non-class instances. A non-class instance is an instance of a class, but is itself not a class. An instance of a metaclass, for example, would not be a non-class instance. In this paper, we will sometimes refer to instantiation. Instantiation has two common meanings: as a verb, instantiation is the process of creating an instance of a class, and as a noun, an instantiation is an instance of a class. Some people restrict the use of the term object to instances of classes. For these people, classes are not objects. However, when these people are confronted with the concepts of metaclasses and parameterized classes, they have a difficulty attempting to resolve the problems these concepts introduce. For example, is a class that is an instance of a metaclass an object even though it is itself a class? In this paper, we will use the term object to refer to both classes and their instances. We will only distinguish between the two when needed. Black Boxes and Interfaces Objects are black boxes. Specifically, the underlying implementations of objects are hidden from those that use the object. In object-oriented systems, it is only the producer (creator, designer, or builder) of an object that knows the details about the internal construction of that object. The consumers (users) of an object are denied knowledge of the inner workings of the object, and must deal with an object via one of its three distinct interfaces: The public interface. This is the interface that is open (visible) to everybody. The inheritance interface. This is the interface that is accessible only by direct specializations of the object. (We will discuss inheritance and specialization later in this chapter.) In class-based object-oriented systems, only classes can provide an inheritance interface. The parameter interface. In the case of parameterized classes, the parameter interface defines the parameters that must be supplied to create an instance of the parameterized class. Another way of saying that an item is in the public interface of an object is to say that the object exports that item. Similarly, when an object requires information from outside of itself (e.g., as with the parameters in a parameterized class), we can say that the object needs to import that information. Aggregation It is, of course, possible for objects to be composed of other objects. Aggregation is either: The process of creating a new object from two or more other objects, or An object that is composed of two or more other objects. For example, a date object could be fashioned from a month object, a day object, and a year object. A list of names object, for example, can be thought of as containing many name objects. A monolithic object is an object that has no externally-discernible structure. Said another way, a monolithic object does not appear to have been constructed from two or more other objects. Specifically, a monolithic object can only be treated as a cohesive whole. Those outside of a monolithic object cannot directly interact with any (real or imagined) objects within the monolithic object. A radio button in a graphical user interface (GUI) is an example of a monolithic object. Composite objects are objects that have an externally-discernible structure, and the structure can be addressed via the public interface of the composite object. The objects that comprise a composite object are referred to as component objects. Composite objects meet one or both of the following criteria: The state of a composite object is directly affected by the presence or absence of one or more of its component objects, and/or The component objects can be directly referenced via the public interface of their corresponding composite object. It is useful to divide composite objects into two subcategories: heterogeneous composite objects and homogeneous composite objects: A heterogeneous composite object is a composite object that is conceptually composed of component objects that are not all conceptually the same. For example, a date (made up of a month object, a day object, and a year object) is a heterogeneous composite object. A homogeneous composite object is a composite object that is conceptually composed of component objects that are all conceptually the same. For example, a list of addresses is a homogeneous composite object. The rules for designing heterogeneous composite objects are different from the rules for designing homogeneous composite objects. Specialization and Inheritance Aggregation is not the only way in which two objects can be related. One object can be a specialization of another object. Specialization is either: The process of defining a new object based on a (typically) more narrow definition of an existing object, or An object that is directly related to, and more narrowly defined than, another object. Specialization is usually associated with classes. It is usually only in the so-called classless object-oriented systems that we think of specialization for objects other than classes. Depending on their technical background, there are a number of different ways in which people express specialization. For example, those who are familiar with an object-oriented programming language called Smalltalk refer to specializations as subclasses and to the corresponding generalizations of these specializations as superclasses. Those with a background in the C++ programming language use the term derived class for specialization and base class for corresponding generalizations. It is common to say that everything that is true for a generalization is also true for its corresponding specialization. We can, for example, define checking accounts and savings accounts as specializations of bank accounts. Another way of saying this is that a checking account is a kind of bank account, and a savings account is a kind of bank account. Still another way of expressing this idea is to say that everything that was true for the bank account is also true for the savings account and the checking account. In an object-oriented context, we speak of specializations as inheriting characteristics from their corresponding generalizations. Inheritance can be defined as the process whereby one object acquires (gets, receives) characteristics from one or more other objects. Some object-oriented systems permit only single inheritance, a situation in which a specialization may only acquire characteristics from a single generalization. Many object-oriented systems, however, allow for multiple inheritance, a situation in which a specialization may acquire characteristics from two or more corresponding generalizations. Our previous discussion of the bank account, checking account, and savings account was an example of single inheritance. A telescope and a television set are both specializations of device that enables one to see things far away. A television set is also a kind of electronic device. You might say that a television set acquires characteristics from two different generalizations, device that enables one to see things far away and electronic device. Therefore, a television set is a product of multiple inheritance. Abstract Classes We usually think of classes as being complete definitions. However, there are situations where incomplete definitions are useful, and classes that represent these incomplete definitions are equally useful. For example, in everyday conversation, we might talk about such items as bank accounts, insurance policies, and houses. In object-oriented thinking, we often isolate useful, but incomplete, concepts such as these into their own special classes. Abstract classes are classes that embody coherent and cohesive, but incomplete, concepts, and in turn, make these characteristics available to their specializations via inheritance. People sometimes use the terms partial type and abstract superclass as synonyms for abstract class. While we would never create instances of abstract classes, we most certainly would make their individual characteristics available to more specialized classes via inheritance. For example, consider the concept of an automobile. On one hand, most people know what an automobile is. On the other hand, automobile is not a complete definition for any vehicle. It would be quite accurate to describe automobile as the set of characteristics that make a thing an automobile, in other words, the essence of automobile-ness. Operations The public interface of an object typically contains three different categories of items: operations (sometimes referred to as method selectors, method interfaces, messages, or methods), constants, and exceptions. An operation in the public interface of an object advertises a functional capability of that object. For example, deposit would be an operation in the public interface of a bank account object, what is current temperature would be an operation in the public interface of a temperature sensor object, and increment would be an operation in the public interface of a counter object. The actual algorithm for accomplishing an operation is referred to as a method. Unlike operations, methods are not in the public interface for an object. Rather, methods are hidden on the inside of an object. So, while users of bank account objects would know that they could make a deposit into a bank account, they would be unaware of the details as to how that deposit actually got credited to the bank account. We refer to the operations in the public interface of an object as suffered operations. Suffered operations are operations that meet two criteria: they are things that happen to an object, and they are in the public interface of that object. For example, we can say that a bank account suffers the operation of having a deposit made into it. The bank account can also suffer the operation of being queried as to its current balance. Some people also refer to suffered operations as exported operations. There are three broad categories of suffered operations, i.e.: A selector is an operation that tells us something about the state of an object, but cannot, by definition, change the state of the object. An operation that tells us the current balance of a bank account is an example of a selector operation. A constructor is an operation that has the ability to change the state of an object. For example, an operation in the public interface to a mailbox object that added a message to the mailbox would be a constructor operation. (Please note that some people restrict the definition of the term constructor to those operations that cause instances of a class to come into existence.) In the context of a homogeneous composite object, an iterator is an operation that allows its users to visit (access) each of the component objects that make up the homogeneous composite object. If we have a list of addresses, for example, and we wish to print the entire list, an iterator would allow us to visit each address object within the list and then, in turn, to print each address. Iterators can be further divided into two broad categories: active (open) iterators and passive (closed) iterators. Active iterators are objects in their own right. Passive iterators are implemented as operations in the interface of the object over which they allow iteration. Passive iterators are further broken down into selective iterators and constructive iterators. Passive selective iterators do not allow their users to change the object over which the iteration takes place. Passive constructive iterators do allow users to change the object over which iteration takes place. We can also describe suffered operations as primitive or composite. A primitive operation is an operation that cannot be accomplished simply, efficiently, and reliably without direct knowledge of the underlying (hidden) implementation of the object. As an example, we could argue that an operation that added an item to a list object, or an operation that deleted an item from a list object were primitive operations with respect to the list object. Suppose that we wanted to create a swap operation, an operation that would swap in a new item in a list, while at the same time swapping out an old item in the same list. This is not a primitive operation since we can accomplish this with a simple combination of the delete operation (deleting the old item) followed by the add operation (adding the new item). The swap operation is an example of a composite operation. A composite operation is any operation that is composed, or can be composed, of two or more primitive operations. Sometimes objects need help in maintaining their characteristics. Suppose, for example, that we wanted to create a generic ordered list object. An ordered list is a list that must order its contents from the smallest to the largest. Specifically, every time we add an item to our ordered list, that item would have to be placed in its proper position with respect to all the other items already in the list. By generic, we mean a template that can be instantiated with the category (class) of items we wish to place in the ordered list. It would not be unreasonable to implement this object as a parameterized class. Obviously, one of the parameters would be the category of items (e.g., class) that we desired to place in the list. For example, could instantiate (make an instance) the generic ordered list with a name class resulting in the creation of an ordered list of names class. There is a problem, however. Given that we could instantiate the generic ordered list with just about any category of items, how can we be sure that the ordered lists will know how to properly maintain order no matter what we use to instantiate the generic ordered list? Suppose, for example, that we wanted an ordered list of fazoomas. How could the generic list class tell if one fazooma was greater than or less than another fazooma? A solution would be for the generic ordered list to require a second parameter, a parameter over and above the category of items (class) that we desired to place in the list. This second parameter would be a The Constants In addition to suffered operations, the public interface of an object can also contain constants. Constants are objects of constant state. Imagine that we want to create a bounded list of addresses class. A bounded list is a list that has a fixed maximum number of elements. A bounded list can be empty, and it can contain fewer than the maximum number of elements. It can even contain the maximum number of elements, but it can never contain more than the defined maximum number of elements. Assume that we place a constant in the public interface of our bounded list of addresses. This constant represents the maximum number of elements that can be placed in the bounded list. Assume also that there is a suffered operation that will tell us how many elements (addresses, in our example) are currently in the bounded list. We can now determine how much room is available in the bounded list by inquiring how many addresses are already in the list, and then subtracting this from the previously-defined constant. In some cases, as with the bounded list example above, constants are provided more for convenience than necessity. In other cases, such as in the case of encryption algorithms needing a seed value, constants are an absolute requirement. Exceptions A third category of items that can be found in the public interface of objects is exceptions. Exceptions have two different definitions: an event that causes suspension of normal application execution, and a set of information directly relating to the event that caused suspension of normal application execution. Exceptions can be contrasted with an older, less reliable technology: error codes. The idea behind error codes was fairly simple. You would request that an application, or part of an application, accomplish some work. One of the pieces of information that would be returned to the requester would be an error code. If all had gone well, the error code would typically have a value of zero. If any problems had occurred, the error code would have a non-zero value. It was also quite common to associate different non-zero values of an error code with specific errors. Error codes suffered from two major problems: No one was forced to actually check the value of returned error codes. Changes (additions, deletions, and modifications) in the meanings of the special values assigned to error codes were not automatically passed on to interested parties. Tracking the effects of a changed error code value often consumed a significant amount of resources. To understand how exceptions directly address both of these issues, we first need to understand how exceptions typically work: Exceptions may be defined by the environment or by the user. When an exceptional (but not unforeseen) condition occurs, an appropriate exception is activated. (People use different terms to express the activation of an exception. The most common is raise. Less commonly, people use the terms throw or activate.) This activation may be automatic (controlled by the environment) or may be expressly requested by the designer of the object or application. Examples of exceptional conditions include trying to remove something from an empty container, directing an elevator on the top floor to go up, and attempting to cause a date to take on an invalid value like February 31, 1993. Once the exception is activated, normal application execution stops and control is transferred to a locally defined exception handler, if one is present. If no locally defined exception handler is present or if the exception handler is not equipped to handle the exception, the exception is propagated to the next higher level of the application. Exceptions cannot be ignored. An exception will continue to be sent to higher levels of the application until it is either turned off or the application ceases to function. An exception handler checks to see what type of exception has been activated. If the exception is one that the handler recognizes, a specific set of actions is taken. Executing a set of actions in response to an exception is known as handling the exception. Handling an exception deactivates the exception; the exception will not be propagated any further. Unlike error codes, exceptions cannot be ignored. Once an exception has been activated, it demands attention. In object-oriented systems, exceptions are placed in the public interfaces of objects. Changes in the public interfaces of objects very often require an automatic rechecking of all other objects that invoke operations in the changed objects. Thus, changes in exceptions result in at least a partially automated propagation of change information. Object Coupling and Object Cohesion Engineers have known for centuries that the less any one part of a system knows about any other part of that same system, the better the overall system. Systems whose components are highly independent of each other are easier to fix and enhance than systems where there are strong interdependencies among some or all of the components. Highly independent system components are possible when there is minimal coupling among the components, and each component is highly cohesive. Coupling is a measure of the strength of the connection between any two system components. The more any one component knows about another component, the tighter (worse) the coupling is between those two components. Cohesion is a measure of how logically related the parts of an individual component are to each o Concepts of Object Oriented Techniques with OO Issues Concepts of Object Oriented Techniques with OO Issues Abstract Object-oriented frameworks offer reuse at a high design level promising several benefits to the development of complex systems. This paper sought to 1) define the concepts of object oriented techniques in addition with the OO issues, development techniques and concepts of object oriented programming, it is also introduced the UML as an ordinary and key tool for object-oriented design, additionally 2) we look further into the frameworks from the perspective of object-oriented techniques. In this section, it is aimed to define a reasonable promise between object oriented technology and frameworks. At the end, some future horizons for object oriented technology and frameworks are presented. I. Introduction Computing power and network bandwidth have increased dramatically over the past decade. However, the design and implementation of complex software remains expensive and error-prone. Much of the cost and effort stems from the continuous re-discovery and re-invention of core concepts and components across the software industry. In particular, the growing heterogeneity of hardware architectures and diversity of operating system and communication platforms makes it hard to build correct, portable, efficient, and inexpensive applications from scratch. Object-oriented (OO) techniques and frameworks are promising technologies for reifying proven software designs and implementations in order to reduce the cost and improve the quality of software. A framework is a reusable, semi-complete application that can be specialized to produce custom applications [19]. In contrast to earlier OO reuse techniques based on class libraries, frameworks are targeted for particular business units (such as dat a processing or cellular communications[1]) and application domains (such as user interfaces or real-time avionics). Frameworks like MacApp, ET++, Interviews, ACE, Microsofts MFC and DCOM, JavaSofts RMI, and implementations of OMGs CORBA play an increasingly important role in contemporary software development. II. Object oriented concepts and techniques History The concept of objects and instances in computing had its first major breakthrough with the PDP-1 system at MIT which was probably the earliest example of capability based architecture. Another early example was Sketchpad created by Ivan Sutherland in 1963; however, this was an application and not a programming paradigm. Objects as programming entities were introduced in the 1960s in Simula 67, a programming language designed for performing simulations, created by Ole-Johan Dahl and Kristen Nygaard of the Norwegian Computing Center in Oslo. (They were working on ship simulations, and were confounded by the combinatorial explosion of how the different attributes from different ships could affect one another. The idea occurred to them of grouping the different types of ships into different classes of objects; each class of objects being responsible for defining its own data and behavior.) Such an approach was a simple extrapolation of concepts earlier used in analog programming. On ana log computers, mapping from real-world phenomena/objects to analog phenomena/objects (and conversely), was (and is) called simulation. Simula not only introduced the notion of classes, but also of instances of classes, which is probably the first explicit use of those notions. The ideas of Simula 67 influenced many later languages, especially Smalltalk and derivatives of Lisp and Pascal. The Smalltalk language, which was developed at Xerox PARC[2] (by Alan Kay and others) in the 1970s, introduced the term object-oriented programming to represent the pervasive use of objects and messages as the basis for computation. Smalltalk creators were influenced by the ideas introduced in Simula 67, but Smalltalk was designed to be a fully dynamic system in which classes could be created and modified dynamically rather than statically as in Simula 67. Smalltalk and with it OOP were introduced to a wider audience by the August 1981 issue of Byte magazine. In the 1970s, Kays Smalltalk work had influenced the Lisp community to incorporate object-based techniques which were introduced to developers via the Lisp machine. Experimentation with various extensions to Lisp (like LOOPS and Flavors introducing multiple inheritance and mixins), eventually led to the Common Lisp Object System (CLOS, a part of the first standardized object-oriented programming language, ANSI Common Lisp), which integrates functional programming and object-oriented programming and allows extension via a Meta-object protocol. In the 1980s, there were a few attempts to design processor architectures which included hardware support for objects in memory but these were not successful. Examples include the Intel iAPX 432 and the Linn Smart Rekursiv. Object-oriented programming developed as the dominant programming methodology during the mid-1990s, largely due to the influence of Visual FoxPro 3.0 or possibly C++. Its dominance was further enhanced by the rising popularity of graphical user interfaces, for which object-oriented programming seems to be well-suited. An example of a closely related dynamic GUI library and OOP language can be found in the Cocoa frameworks on Mac OS X, written in Objective-C, an object-oriented, dynamic messaging extension to C based on Smalltalk. OOP toolkits also enhanced the popularity of event-driven programming (although this concept is not limited to OOP). Some feel that association with GUIs (real or perceived) was what propelled OOP into the programming mainstream. At ETH ZÃ ¼rich, Niklaus Wirth and his colleagues had also been investigating such topics as data abstraction and modular programming (although this had been in common use in the 1960s or earlier). Modula-2 (1978) included both, and their succeeding design, Oberon, included a distinctive approach to object orientation, classes, and such. The approach is unlike Smalltalk, and very unlike C++. Object-oriented features have been added to many existing languages during that time, including Ada, BASIC, Fortran, Pascal, and others. Adding these features to languages that were not initially designed for them often led to problems with compatibility and maintainability of code. More recently, a number of languages have emerged that are primarily object-oriented yet compatible with procedural methodology, such as Python and Ruby. Probably the most commercially important recent object-oriented languages are Visual Basic.NET (VB.NET) and C#, both designed for Microsofts .NET platform, and Java, developed by Sun Microsystems. VB.NET and C# both support cross-language inheritance, allowing classes defined in one language to subclass classes defined in the other language. Just as procedural programming led to refinements of techniques such as structured programming, modern object-oriented software design methods include refinements such as the use of design patterns, design by contract, and modeling languages (such as UML). The term OOPS, which refers to an object-oriented programming system, was common in early development of object-oriented programming. III. Fundamental concepts and features Class Defines the abstract characteristics of a thing (object), including the things characteristics (its attributes, fields or properties) and the things behaviors (the things it can do, or methods, operations or features). One might say that a class is a blueprint or factory that describes the nature of something. For example, the class Dog would consist of traits shared by all dogs, such as breed and fur color (characteristics), and the ability to bark and sit (behaviors). Classes provide modularity and structure in an object-oriented computer program. A class should typically be recognizable to a non-programmer familiar with the problem domain, meaning that the characteristics of the class should make sense in context. Also, the code for a class should be relatively self-contained (generally using encapsulation). Collectively, the properties and methods defined by a class are called members. Object A pattern (exemplar) of a class. The class Dog defines all possible dogs by listing the characteristics and behaviors they can have; the object Lassie is one particular dog, with particular versions of the characteristics. A Dog has fur; Lassie has brown-and-white fur. Instance One can have an instance of a class; the instance is the actual object created at runtime. In programmer jargon, the Lassie object is an instance of the Dog class. The set of values of the attributes of a particular object is called its state. The object consists of state and the behavior thats defined in the objects class. More on Classes, Metaclasses, Parameterized Classes, and Exemplars There are two broad categories of objects: classes and instances. Users of object-oriented technology usually think of classes as containing the information necessary to create instances, i.e., the structure and capabilities of an instance is determined by its corresponding class. There are three commonly used (and different) views on the definition for class: A class is a pattern, template, or blueprint for a category of structurally identical items. The items created using the class are called instances. This is often referred to as the class as a `cookie cutter' view. As you might guess, the instances are the cookies. A class is a thing that consists of both a pattern and a mechanism for creating items based on that pattern. This is the class as an `instance factory' view; instances are the individual items that are manufactured (created) using the classs creation mechanism. A class is the set of all items created using a specific pattern. Said another way, the class is the set of all instances of that pattern. We should note that it is possible for an instance of a class to also be a class. A metaclass is a class whose instances themselves are classes. This means when we use the instance creation mechanism in a metaclass, the instance created will itself be a class. The instance creation mechanism of this class can, in turn, be used to create instances although these instances may or may not themselves be classes. A concept very similar to the metaclass is the parameterized class. A parameterized class is a template for a class wherein specific items have been identified as being required to create non-parameterized classes based on the template. In effect, a parameterized class can be viewed as a fill in the blanks version of a class. One cannot directly use the instance creation mechanism of a parameterized class. First, we must supply the required parameters, resulting in the creation of a non-parameterized class. Once we have a non-parameterized class, we can use its creation mechanisms to create instances. In this paper, we will use the term class to mean metaclass, parameterized class, or a class that is neither a metaclass nor a parameterized class. We will make a distinction only when it is necessary to do so. Further, we will occasionally refer to non-class instances. A non-class instance is an instance of a class, but is itself not a class. An instance of a metaclass, for example, would not be a non-class instance. In this paper, we will sometimes refer to instantiation. Instantiation has two common meanings: as a verb, instantiation is the process of creating an instance of a class, and as a noun, an instantiation is an instance of a class. Some people restrict the use of the term object to instances of classes. For these people, classes are not objects. However, when these people are confronted with the concepts of metaclasses and parameterized classes, they have a difficulty attempting to resolve the problems these concepts introduce. For example, is a class that is an instance of a metaclass an object even though it is itself a class? In this paper, we will use the term object to refer to both classes and their instances. We will only distinguish between the two when needed. Black Boxes and Interfaces Objects are black boxes. Specifically, the underlying implementations of objects are hidden from those that use the object. In object-oriented systems, it is only the producer (creator, designer, or builder) of an object that knows the details about the internal construction of that object. The consumers (users) of an object are denied knowledge of the inner workings of the object, and must deal with an object via one of its three distinct interfaces: The public interface. This is the interface that is open (visible) to everybody. The inheritance interface. This is the interface that is accessible only by direct specializations of the object. (We will discuss inheritance and specialization later in this chapter.) In class-based object-oriented systems, only classes can provide an inheritance interface. The parameter interface. In the case of parameterized classes, the parameter interface defines the parameters that must be supplied to create an instance of the parameterized class. Another way of saying that an item is in the public interface of an object is to say that the object exports that item. Similarly, when an object requires information from outside of itself (e.g., as with the parameters in a parameterized class), we can say that the object needs to import that information. Aggregation It is, of course, possible for objects to be composed of other objects. Aggregation is either: The process of creating a new object from two or more other objects, or An object that is composed of two or more other objects. For example, a date object could be fashioned from a month object, a day object, and a year object. A list of names object, for example, can be thought of as containing many name objects. A monolithic object is an object that has no externally-discernible structure. Said another way, a monolithic object does not appear to have been constructed from two or more other objects. Specifically, a monolithic object can only be treated as a cohesive whole. Those outside of a monolithic object cannot directly interact with any (real or imagined) objects within the monolithic object. A radio button in a graphical user interface (GUI) is an example of a monolithic object. Composite objects are objects that have an externally-discernible structure, and the structure can be addressed via the public interface of the composite object. The objects that comprise a composite object are referred to as component objects. Composite objects meet one or both of the following criteria: The state of a composite object is directly affected by the presence or absence of one or more of its component objects, and/or The component objects can be directly referenced via the public interface of their corresponding composite object. It is useful to divide composite objects into two subcategories: heterogeneous composite objects and homogeneous composite objects: A heterogeneous composite object is a composite object that is conceptually composed of component objects that are not all conceptually the same. For example, a date (made up of a month object, a day object, and a year object) is a heterogeneous composite object. A homogeneous composite object is a composite object that is conceptually composed of component objects that are all conceptually the same. For example, a list of addresses is a homogeneous composite object. The rules for designing heterogeneous composite objects are different from the rules for designing homogeneous composite objects. Specialization and Inheritance Aggregation is not the only way in which two objects can be related. One object can be a specialization of another object. Specialization is either: The process of defining a new object based on a (typically) more narrow definition of an existing object, or An object that is directly related to, and more narrowly defined than, another object. Specialization is usually associated with classes. It is usually only in the so-called classless object-oriented systems that we think of specialization for objects other than classes. Depending on their technical background, there are a number of different ways in which people express specialization. For example, those who are familiar with an object-oriented programming language called Smalltalk refer to specializations as subclasses and to the corresponding generalizations of these specializations as superclasses. Those with a background in the C++ programming language use the term derived class for specialization and base class for corresponding generalizations. It is common to say that everything that is true for a generalization is also true for its corresponding specialization. We can, for example, define checking accounts and savings accounts as specializations of bank accounts. Another way of saying this is that a checking account is a kind of bank account, and a savings account is a kind of bank account. Still another way of expressing this idea is to say that everything that was true for the bank account is also true for the savings account and the checking account. In an object-oriented context, we speak of specializations as inheriting characteristics from their corresponding generalizations. Inheritance can be defined as the process whereby one object acquires (gets, receives) characteristics from one or more other objects. Some object-oriented systems permit only single inheritance, a situation in which a specialization may only acquire characteristics from a single generalization. Many object-oriented systems, however, allow for multiple inheritance, a situation in which a specialization may acquire characteristics from two or more corresponding generalizations. Our previous discussion of the bank account, checking account, and savings account was an example of single inheritance. A telescope and a television set are both specializations of device that enables one to see things far away. A television set is also a kind of electronic device. You might say that a television set acquires characteristics from two different generalizations, device that enables one to see things far away and electronic device. Therefore, a television set is a product of multiple inheritance. Abstract Classes We usually think of classes as being complete definitions. However, there are situations where incomplete definitions are useful, and classes that represent these incomplete definitions are equally useful. For example, in everyday conversation, we might talk about such items as bank accounts, insurance policies, and houses. In object-oriented thinking, we often isolate useful, but incomplete, concepts such as these into their own special classes. Abstract classes are classes that embody coherent and cohesive, but incomplete, concepts, and in turn, make these characteristics available to their specializations via inheritance. People sometimes use the terms partial type and abstract superclass as synonyms for abstract class. While we would never create instances of abstract classes, we most certainly would make their individual characteristics available to more specialized classes via inheritance. For example, consider the concept of an automobile. On one hand, most people know what an automobile is. On the other hand, automobile is not a complete definition for any vehicle. It would be quite accurate to describe automobile as the set of characteristics that make a thing an automobile, in other words, the essence of automobile-ness. Operations The public interface of an object typically contains three different categories of items: operations (sometimes referred to as method selectors, method interfaces, messages, or methods), constants, and exceptions. An operation in the public interface of an object advertises a functional capability of that object. For example, deposit would be an operation in the public interface of a bank account object, what is current temperature would be an operation in the public interface of a temperature sensor object, and increment would be an operation in the public interface of a counter object. The actual algorithm for accomplishing an operation is referred to as a method. Unlike operations, methods are not in the public interface for an object. Rather, methods are hidden on the inside of an object. So, while users of bank account objects would know that they could make a deposit into a bank account, they would be unaware of the details as to how that deposit actually got credited to the bank account. We refer to the operations in the public interface of an object as suffered operations. Suffered operations are operations that meet two criteria: they are things that happen to an object, and they are in the public interface of that object. For example, we can say that a bank account suffers the operation of having a deposit made into it. The bank account can also suffer the operation of being queried as to its current balance. Some people also refer to suffered operations as exported operations. There are three broad categories of suffered operations, i.e.: A selector is an operation that tells us something about the state of an object, but cannot, by definition, change the state of the object. An operation that tells us the current balance of a bank account is an example of a selector operation. A constructor is an operation that has the ability to change the state of an object. For example, an operation in the public interface to a mailbox object that added a message to the mailbox would be a constructor operation. (Please note that some people restrict the definition of the term constructor to those operations that cause instances of a class to come into existence.) In the context of a homogeneous composite object, an iterator is an operation that allows its users to visit (access) each of the component objects that make up the homogeneous composite object. If we have a list of addresses, for example, and we wish to print the entire list, an iterator would allow us to visit each address object within the list and then, in turn, to print each address. Iterators can be further divided into two broad categories: active (open) iterators and passive (closed) iterators. Active iterators are objects in their own right. Passive iterators are implemented as operations in the interface of the object over which they allow iteration. Passive iterators are further broken down into selective iterators and constructive iterators. Passive selective iterators do not allow their users to change the object over which the iteration takes place. Passive constructive iterators do allow users to change the object over which iteration takes place. We can also describe suffered operations as primitive or composite. A primitive operation is an operation that cannot be accomplished simply, efficiently, and reliably without direct knowledge of the underlying (hidden) implementation of the object. As an example, we could argue that an operation that added an item to a list object, or an operation that deleted an item from a list object were primitive operations with respect to the list object. Suppose that we wanted to create a swap operation, an operation that would swap in a new item in a list, while at the same time swapping out an old item in the same list. This is not a primitive operation since we can accomplish this with a simple combination of the delete operation (deleting the old item) followed by the add operation (adding the new item). The swap operation is an example of a composite operation. A composite operation is any operation that is composed, or can be composed, of two or more primitive operations. Sometimes objects need help in maintaining their characteristics. Suppose, for example, that we wanted to create a generic ordered list object. An ordered list is a list that must order its contents from the smallest to the largest. Specifically, every time we add an item to our ordered list, that item would have to be placed in its proper position with respect to all the other items already in the list. By generic, we mean a template that can be instantiated with the category (class) of items we wish to place in the ordered list. It would not be unreasonable to implement this object as a parameterized class. Obviously, one of the parameters would be the category of items (e.g., class) that we desired to place in the list. For example, could instantiate (make an instance) the generic ordered list with a name class resulting in the creation of an ordered list of names class. There is a problem, however. Given that we could instantiate the generic ordered list with just about any category of items, how can we be sure that the ordered lists will know how to properly maintain order no matter what we use to instantiate the generic ordered list? Suppose, for example, that we wanted an ordered list of fazoomas. How could the generic list class tell if one fazooma was greater than or less than another fazooma? A solution would be for the generic ordered list to require a second parameter, a parameter over and above the category of items (class) that we desired to place in the list. This second parameter would be a The Constants In addition to suffered operations, the public interface of an object can also contain constants. Constants are objects of constant state. Imagine that we want to create a bounded list of addresses class. A bounded list is a list that has a fixed maximum number of elements. A bounded list can be empty, and it can contain fewer than the maximum number of elements. It can even contain the maximum number of elements, but it can never contain more than the defined maximum number of elements. Assume that we place a constant in the public interface of our bounded list of addresses. This constant represents the maximum number of elements that can be placed in the bounded list. Assume also that there is a suffered operation that will tell us how many elements (addresses, in our example) are currently in the bounded list. We can now determine how much room is available in the bounded list by inquiring how many addresses are already in the list, and then subtracting this from the previously-defined constant. In some cases, as with the bounded list example above, constants are provided more for convenience than necessity. In other cases, such as in the case of encryption algorithms needing a seed value, constants are an absolute requirement. Exceptions A third category of items that can be found in the public interface of objects is exceptions. Exceptions have two different definitions: an event that causes suspension of normal application execution, and a set of information directly relating to the event that caused suspension of normal application execution. Exceptions can be contrasted with an older, less reliable technology: error codes. The idea behind error codes was fairly simple. You would request that an application, or part of an application, accomplish some work. One of the pieces of information that would be returned to the requester would be an error code. If all had gone well, the error code would typically have a value of zero. If any problems had occurred, the error code would have a non-zero value. It was also quite common to associate different non-zero values of an error code with specific errors. Error codes suffered from two major problems: No one was forced to actually check the value of returned error codes. Changes (additions, deletions, and modifications) in the meanings of the special values assigned to error codes were not automatically passed on to interested parties. Tracking the effects of a changed error code value often consumed a significant amount of resources. To understand how exceptions directly address both of these issues, we first need to understand how exceptions typically work: Exceptions may be defined by the environment or by the user. When an exceptional (but not unforeseen) condition occurs, an appropriate exception is activated. (People use different terms to express the activation of an exception. The most common is raise. Less commonly, people use the terms throw or activate.) This activation may be automatic (controlled by the environment) or may be expressly requested by the designer of the object or application. Examples of exceptional conditions include trying to remove something from an empty container, directing an elevator on the top floor to go up, and attempting to cause a date to take on an invalid value like February 31, 1993. Once the exception is activated, normal application execution stops and control is transferred to a locally defined exception handler, if one is present. If no locally defined exception handler is present or if the exception handler is not equipped to handle the exception, the exception is propagated to the next higher level of the application. Exceptions cannot be ignored. An exception will continue to be sent to higher levels of the application until it is either turned off or the application ceases to function. An exception handler checks to see what type of exception has been activated. If the exception is one that the handler recognizes, a specific set of actions is taken. Executing a set of actions in response to an exception is known as handling the exception. Handling an exception deactivates the exception; the exception will not be propagated any further. Unlike error codes, exceptions cannot be ignored. Once an exception has been activated, it demands attention. In object-oriented systems, exceptions are placed in the public interfaces of objects. Changes in the public interfaces of objects very often require an automatic rechecking of all other objects that invoke operations in the changed objects. Thus, changes in exceptions result in at least a partially automated propagation of change information. Object Coupling and Object Cohesion Engineers have known for centuries that the less any one part of a system knows about any other part of that same system, the better the overall system. Systems whose components are highly independent of each other are easier to fix and enhance than systems where there are strong interdependencies among some or all of the components. Highly independent system components are possible when there is minimal coupling among the components, and each component is highly cohesive. Coupling is a measure of the strength of the connection between any two system components. The more any one component knows about another component, the tighter (worse) the coupling is between those two components. Cohesion is a measure of how logically related the parts of an individual component are to each o
Subscribe to:
Posts (Atom)