Essay help australia
Exemplification Essay Topics For College Students
Thursday, September 3, 2020
Medical surgical on discharge planning Essay Example | Topics and Well Written Essays - 1750 words
Clinical careful on release arranging - Essay Example Release arranging is tied in with figuring out what a patient requirements for a smooth move from one degree of care to the next, as they move from a medical clinic careful ward to recuperate at home as an outpatient. It is positively best to set up a patient for recuperation instead of to leave them out of the loop to encounter new things without anyone else in light of the fact that not knowing can have negative results. This review presents release making arrangements for a patient who has had Coronary Artery Bypass Graft medical procedure performed on them in a careful ward and is getting ready to move to their home. Coronary Artery Bypass Graft medical procedure (CABG) is a surgery that is performed to open blocked coronary corridors utilizing unites from a patientââ¬â¢s own courses or veins situated in the leg, arm or chest (Senagore, 2004, Pp. 346 â⬠352) and (Fuster, 2009, Chapter 65). The united supply routes or veins supplant blocked coronary courses to reestablish blood stream to the heart and to introduce an improved exhibition by this crucial organ, bringing about help from chest agony, ischemia and an improvement in patientââ¬â¢s personal satisfaction along with desires for drawing out a patientââ¬â¢s life. In any case, CBGR is an intrusive system done under general sedation and the patient recoups under concentrated consideration with helped breathing controlled by a mechanical ventilator. Before release, the patients for the most part put in a couple of days under perception in a non-careful unit and are directed and arranged for their release. Release arranging alludes to the procedure that is utilized to figure out what a patient requirements for a smooth move from one degree of care to the next (Birjandi, 2009, Pp. 1 â⬠2). Understand that release arranging isn't just about helping patients to orchestrate care subsequent to leaving an emergency clinic. Release arranging is tied in with watching, breaking down and choosing about how best to help a patient to proceed with their recuperation at home after a doctor has
Saturday, August 22, 2020
The Philosophy of Niccolo Machiavelli
The Philosophy of Niccolo Machiavelli Who was Machiavelli the sovereign? What were his convictions? Machiavelli was an Italian understudy of history, who was a represetative in Florence Italy. He was quite a while official in the Florentine Republic, with commitments in government and military issues. Machiavelli created, in his novel the ruler, the strong central focuses in political force, including religion and great lead. Machiavelli, arrangement in the midst of a period of exciting change known as the Italian Renaissance, demonstrated mien towards various issues, essential legislative issues, which maintained his conviction that strong government was the most basic part in the open eye. These aura and contemplations were amazingly legitimate for the time considering the way that they concentrated on strong, bound together power, the primary kind of activity that seemed, by all accounts, to be working all through Europe, and which was the part Italy was requiring. Machiavelli was a political pragmatist. He thought there were certain capacities and characteristics required to transform into a political ruler. In his work, The Prince, Machiavelli gives admonishment on the most capable strategy to be a productive sovereign, or ruler. Viable is not completely centered around how powerful a ruler was in the midst of his lifetime (rule), yet by and large engaged around how much the sovereign impacted the lives, through laws or cultural principles, of future periods. Machiavelliââ¬â¢s fundamental target was accomplishing and keeping political power. He acknowledged the reality people were naturally puerile and would, commonly, not respect the law or work to support all, without urban morals. The thoughts he introduced were the most ideal approach to controlâ⬠human desires was to give national pride and shared appreciation for all nationals of a state. The qualification in Crafty idea, so far ever, from various scholars was he acknowledged political force was no more protected by strict or significant fundamentals. Disregarding the way that Machiavelli acknowledged this to be certified, he despite everything realized it was fundamental for locals to keep up a promise to assist everybody, through national pride and esteem. A substitute piece of differing created to this point in time was Machiavelli realized progressing city goodness in subjects required the journey for singular opportunity. Machiavelli, in his sytheses, talks about a couple of assorted of government. He got himself ready to disassemble governments, constructing the differentiation in new and old governments. The new governments are the hard ones to keep up, in light of the fact that people are not v ulnerable to change, in reality they pretty much defiance to it, except if the new ruler can address his vow and keep his assurances. Machiavelli realized people were primarily stressed over their property and flourishing of their posse. He likewise knew the organizations business was to guarantee both; despite helping the people flourish and take after their spirits, perhaps. Machiavelli acknowledged only certain people could get the chance to be rulers, considering the way that it took an unprecedented sort of people. He said rulers are not limited by great requests or social gauges. Rulers doesn't have to keep up all the characteristics expected of their locals. While this is authentic, he expresses that a ruler must be real in the open eye, which delineates most of the individuals moderation appeared in all the occupants. If the people acknowledge the ruler is distorting his feelings, they will turn. On the other hand, when the opportunity arrives to choose a decision outside th e area of subject data, a ruler must be savage and prepared to do ââ¬Å"whatever it takes ââ¬Å"to ensure the states achievement. If this suggests the ruler needs to lie or murder, he will. This explains why simply certain people can be rulers. One of Machiavellis most cherished representations of practical rulers is Cesare Borgia. Borgia was picked ruler, after his dad was picked as pope. Borgia realized how to get respect from his occupants through anxiety and control. He in like manner gave the people an OK government and brought harmony and achievement. The request constantly rises, be that as it may, about how to manage the dissenters, or instigators of a get-together. Borgia managed this by enrolling an ace. The implementer was responsible for dealing with lawbreakers, ordinarily by death. The authority was a severe man and called dread in the subjects. Borgia didn't require his family to accomplice him with the ace, so he executed him. Simultaneously he didnt just execute him; he place him in the town square cut down the center to show people he was dead serious. The locals were in awe and considered Borgia their holy person, for beating the implementer, who they had created to despise. Despite how incredible a ruler Borgia was in any case, when the opportunity arrived to present another pope and it wasnt his dad, Borgia came up short and was no more the ruler. While Machiavelli seemed to take no confidence in the piece of the occupant in choosing a ruler, he figured rulers could guarantee their vitality by drawing out the friendship for their family. However even this isnt adequate continually, considering the request continually requested by subjects from its organization, what have you achieved for me recently. The ruler must make sure about the occupants property, flourishing, family, and thriving. For people to lead chipper, full lives, they should be allowed to do what they need, inside the guidelines of a state. Regardless this is a cycle less difficult to keep up, than to begin. For people to do as they wish, there must be rules set up, yet for rules to be made sure about, people need to perceive what they have to do and what they can't do. Here is the explanation governments were intrinsic the essential spot. The social affair of people picked someone to make rules, considering the way that people required more than they had. This is the real purpose behind a ruler, to help make an overall population. Rulers having and keeping power, by a ââ¬Å"whatever it takes ââ¬Å"mentality, overpowered Machiavelli. This seems to invalidate what he is stating with respect to the advantage of everybody and metro excellencies. In case the ruler is simply enlivened forcibly, what thought would he have for the people? None, it appears to me. As demonstrated by Ian Johnston, The Prince was in excess of a powerless undertaking for Machiavelli attempt and arrive at a type of political standard after he had been kicked out and tormented. Johnston acknowledges The Prince was to a more noteworthy degree a farce against rulers and what they stayed for. There are a couple of models where Machiavelli revokes himself, every now and again inside a similar section. Especially, Machiavelli acknowledged rulers should above all, guarantee their own specific security to whatever detriment. In The Prince, he goes to state a champion among the best strategies for making sure about themselves is to annihilate the urban networks as the most ideal approach to hold them. If you think about this for a second, this looks good. For what reason would Machiavelli exhort rulers the most ideal approach to control something is to crush it. People would not recognize control in case it is taken in such a ruthless, savage way. A couple of various events of Machiavelli seeming to mess with words a piece, is where he is talking about incredible laws and extraordinary arms. At whatever point, the words incredible, well, terrible, etc are used, there is an explanation. These words confer a sentiment of moral quality. Rather than endeavoring to see what Machiavelli is really endeavoring to state, people stall out on the tendency brought with these words. Machiavelli has a couple of resemblances and stands out differentiated from Islamic and Jewish political idea. The most unquestionable differentiation, I believe, is the relationship in religion and hypothesis. Machiavelli doesnt put a lot of stock into the possibility of religion. He doesnt acknowledge the state should need to depend on upon strict idea to endure. Genuinely, Machiavelli acknowledged the Roman Catholic Church was accountable for Italy being part into five states. The assemblage isolates instead of joins together. In the Islamic world, religion is the rule string experiencing and weaving everything. Alfarabi was enthused about making a working relationship in religion and hypothesis. He was one of the principal Muslim academics and his work is thought about as much as Aristotle or Plato, in future periods. Avicenna acknowledged all parts in life were explained in conditions and final products terms. The possibility of conditions and final products experiences all the Islamic researchers. For Alfarabi, the conditions and final products was put to use with reason. For inspiration to exist there must be two essential activities. The essential is to portray basic assumptions and definitions that are the starting stages and building squares of a conflict, (reason) and second, check whether completions of a dispute take after brilliantly from the disputes basic doubts and definitions, (sway). Avicenna acknowledged people would tame their desires to support everybody. This point of view is somewhat similar to Machiavellis viewpoint, yet the measures to support all are described differently for both. Individuals who practice Islam they accept everybody whenever described by the declaration of God and deciphered by reason. They combine both to structure a working relationship. I acknowledge the explanation the Islamic geniuses accomplice God with reason, and along these lines hypothesis, lies in their way of life. The strict pioneers of their time snicke red at the idea of thinking. The strict pioneers acknowledged whether thinking had merit, what spot did religion have? . Researchers in the Muslim world must be recognized by some methods. So they began accomplice religion and thinking. They pushed
Friday, August 21, 2020
Shawn Joyce Essay Example For Students
Shawn Joyce Essay Homer (Odyssey)The great epic The Odyssey and the Old Testament show manydifferences in the Greek and Hebrew religions. The Greek religion ispolytheistic and the Hebrew religion is monotheistic. In looking at thenature of the divine beings there are numerous distinctions. In contrasting therelationships among Odysseus and Athena on one hand, and Job and God onthe other, we can perceive contrasts between the strict perspectives ofthe Greeks and Hebrews. These distinctions incorporate, one God versus many,and puerile divine beings versus a caring God. In Homers Odyssey, Odysseus manages numerous Gods while in the OldTestament Job manages one God. Homer expresses, the ace of paradise andhigh thunder, Zeus, went to his place among the Gods(101). This is areference that the Greek religion is a polytheistic religion. The quotecontinues to express that Athena admonishes Odysseus of the burdens that hewill experience (101). She continues to caution him since she minds abouthim. Athena thinks about Odysseus similarly as God thinks about Job. Godrespects Job, for he says, nobody on earth resembles him-he is a really goodperson, who regards me and will not do fiendish (Job 1.8). Since Job hasnever successfully affront God, God adores Job and doesnt need anyharm to transpire. In spite of the fact that the books are extraordinary, the worry thegods have for their kin is comparative. Greek divine beings acted in a silly way a portion of the time. Poseidon,the God of the ocean, needed to annihilate Odysseus (Book V).His activities wereimmature and inappropriate in light of the fact that he should be a divine being, which is nothow he acted. The divine beings are likewise envious. Calypso expresses, a remorseless parcel you will be, you divine beings, and as desirous as envious can be!(bookV). On the off chance that the divine beings should be rulers, at that point for what reason would they say they are desirous? Jealousyis not a faithful attribute. One can find in the Old Testament that the Hebrew Godis never envious. While talking with Satan, God says, All right, Satan,do what you need with whatever has a place with him, yet dont harmJob(Job1.12). God isn't envious on the grounds that most importantly, that isn't hisnature. Furthermore, he realizes that Job is his dedicated servant.In the twobooks the divine beings act distinctively as indicated by their tendency. Taking everything into account, it is essential to see the distinctions andsimilarities in the two bits of writing. The connections betweenOdysseus and Athena and Job and God are comparable somehow or another. Both Athenaand God care for their faithful subjects. In the Odyssey there are differentgods and in the Old Testament there is just a single God. A portion of the divine beings inthe Odyssey have silly qualities, while in the Old Testament, God acts in agodly design.
Friday, June 12, 2020
Capital Punishment Essay - 1650 Words
Capital Punishment (Essay Sample) Content: On Acceptability of Capital PunishmentAuthorà ¢Ã¢â ¬s Name:Instructorà ¢Ã¢â ¬s Name:Course Details:Due Date:On Acceptability of Capital PunishmentIntroductionCapital punishment is also known as death penalty and it has raised several controversial issues in the society today. Many scholars have defined it as the infliction of death as a penalty on a criminal offender for violating criminal rules and laws set down by the government or state. Methods of capital punishment have in the past ranged from stoning, impaling and crucifixion in various societies to the present modern methods that comprises of electrocution, hanging, lethal gas and injection. Many countries all over the world have abolished death penalty as a way of punishing offenders while others have equally retained, and still practices it. The issue of capital punishment is generally a big debate in any society because there are those who support its usage and there are those who are of the contrary o pinion.[Halim, Shaheen and Beverly L. Stiles. "Differential Support for Police Use of Force, theDeath Penalty, and Perceived Harshness of the Courts." Criminal Justice and Behavior 28 (2008):(1): 3-23.] Acceptability of Capital PunishmentThere is no state or government that has an absolute right to put its citizens who are criminal offenders to death. Even the human rights watch committee would be against such practices as they are a human right violation that is recognized internationally. However, even with this kind of argument among others, capital punishment is still practiced by most states for various reasons that are discussed below.If citizens of a particular state decide to confer their voting rights through a referendum by putting certain classes of criminal offender through capital punishment then such a decision made in a democratic manner should be seriously considered and given attention by the policy makers, legislators and the judiciary.Death penalty is acceptable b ecause it can be used to incapacitate criminals who have committed serious offences. It will remove the worst criminals from the society for instance those who have committed murder, treason etc. the society will feel much safer when the criminal are dead because there will be no fear of them repeating the offences after release from prison or even when they are within prison.Imprisonment of criminals like murderers for a very long time means more cost on the government and the tax payer as well. It is expensive keeping the prisoners in and that money could be spent on other government expenses if the criminals are executed.It also acts as means of deterring other offenders. You will find that a country that carries out more capital punishment of death sentence has very few crimes and criminals to deal with. Criminals will in most cases think of the consequences that their crimes may lead them to and in such situations they will tend to avoid committing them in the long run. This ha s been proven because the rate of serious offences in countries that abolished capital punishment like Britain are higher compared to those that still practice death penalty.[...
Sunday, May 17, 2020
The Epidemic Of The United States - 1668 Words
The United States is currently under attack by a commanding disease that is seeking to bring this great nation to an early demise. This disease sucks the energy out of many individuals and takes control of the body by sparking heart attacks, strokes, high blood pressure, and even cancer. With the help of major junk food companies, this outbreak continues to claim thousands of lives each year. In our country today, this epidemic trails tobacco use in the second leading cause of preventable death. Many researchers have studied this horrible plague, and the only cure is the motivation to live a healthier lifestyle. Although the profits from major junk-food companies contribute significantly to America s economy, the nation is blind to theâ⬠¦show more contentâ⬠¦Though my hold out would end soon, once I found out that not only does this snack turn fingers red, but also stool. Unaware of all this information I consumed tons of this product, and gained weight, as well as produced re d stool. In retrospect, if there were warning labels on this product alerting consumers of the possibility of producing red stool and becoming obese, I would not have even picked up this product. Nevertheless, I was blinded by the deceitfulness of this junk food company, and as a result, my body suffered the consequences of consuming their products. In 2010, 43 million children were projected to be overweight because of these products. However, the nation exceeded this statistic by having 92 million children being at risk of obesity (Borghi, De Onis, and Blossner 1). Because of the countryââ¬â¢s inability to take control of this problem, lawsuits have begun to be filed against major fast-food companies, such as McDonalds, Burger King, Taco Bell, and Hardees. These companies are being sued because citizens claim they are unaware of the detriments that grease and tons of sugar can do to oneââ¬â¢s body. For instance, in the court case Pelman v. McDonaldââ¬â¢s Corporation, these people were suing McDonalds because they strongly believed that their fast food was the reason why they were having health issues (Kornblet 209). Though this argument seemed to be valid, countless factors affect weight and health of
Wednesday, May 6, 2020
Creon And Achilles Essays - 1515 Words
Both Creon of Sophoclesââ¬â¢ Antigone and Achilles of Homerââ¬â¢s The Iliad end up allowing the body of their enemy a proper burial. During the time following the death of Hector, Achilles is in a position very similar to that which Creon deals with in Antigone. Both men show similar flaws, and face similar struggles. The difference between the two men is only subtly discernible until the telling moment when each man is faced with pressure to change his stance on the fate of the fallen warrior. Each manââ¬â¢s initial reaction is quite telling of his character, and the motives behind each manââ¬â¢s decision (although the motives are debatable) also help to expose his true nature. In the end, there seems to be a quality within each man which lies aboveâ⬠¦show more contentâ⬠¦This ardent anger is left unparalleled by the actions of Achilles. Achilles shows only one additional spark of anger during the his conversation with Priam. Impatient for the return of his sonâ⠬â¢s body Priam says to Achilles ââ¬Å"Give him back to me, now, no more delay--/ I must see my son with my own eyesâ⬠(XXIV-650). To this Achilles responds angrily ââ¬Å"No more, old man, donââ¬â¢t tempt my wrath, not now!â⬠(XXIV-656), ââ¬Å"So donââ¬â¢t anger me now. Donââ¬â¢t stir my raging heart still more./ Or under my own roof I may not spare your life, old man--â⬠(XXIV-667). Although the initial threats are similar in nature, the actions that each man takes after making the threat is a truer measure of the rage within each man. Creon sends Antigone to her tomb, while Achilles regains his composure allowing for Priamââ¬â¢s safe return to Troy and peaceful burial of his son Hector. Creonââ¬â¢s rage is more powerful than Achillesââ¬â¢ in this situation. nbsp;nbsp;nbsp;nbsp;nbsp;The importance of the Gods and the way mortals regard them in Greek literature can never be underestimated. Antigone and The Iliad are obviously not exceptions. It is a fair to assume that both Achilles and Creon were defying the Gods by their refusal to bury the fallen warriors. In The Iliad, there is actually a scene where we hear the Godââ¬â¢s dissatisfaction with the state of Hectorââ¬â¢s corpse. Apollo calls on the other Godââ¬â¢s to pity Hector and his family. He asks whether Hector has reverently made rich sacrifices to the Godââ¬â¢s and criticizesShow MoreRelatedOedipus as King of Thebes: Antigone by Sophocles1380 Words à |à 6 Pagesdestruction. This is illustrated by various charactersââ¬â¢ such as Creon in Antigone by Sophocles, Oedipus in Oedipus the King by Sophocles and the Trojans in the Aeneid by Virgil. In the Antigone we see the consequence of oneââ¬â¢s pride and desire for power take hold, when Creon decides to punish A ntigone for disobeying the law off the land and proving Polynices with a burial. The disregard for any form of sympathy would eventually come to hunt Creon, in a reversal of fortune that would see him loose not onlyRead MoreAntigone vs. Iliad Essay948 Words à |à 4 Pagesuncle Creon (the king). ââ¬Å"He has no right to keep me from my ownâ⬠(92). In my opinion, Antigone figured Creon would take it easy on her because she was family. ââ¬Å"But a king has many advantages, he can do or say what he pleasesâ⬠(93). Another example of love I found while reading The Iliad was the love Achilles had for his cousin Patroclus (his cousin). Achilles felt he had lost someone very close to his heart. Achilles also felt that Patroclus had been killed in an unfair manner. Achilles felt HectorRead MoreHonor in the Iliad and Antigone Essay1007 Words à |à 5 Pageslife to achieve honor. Patroclus is like a brother to Achilles as they grow up together. While Patroclus is alive, he respects Achillesââ¬â¢ decision to remain out of the battle. After he dies, Achilles lays down his individual pride, which has insulted by Agamemnon earlier and returns back to the battle. Achilles successfully kills Hector and exacts his revenge by mutilating the body. Patroclusââ¬â¢ honor is shown in his elaborate ceremonies that Achilles holds for his passing and extends to the mourning shownRead MoreAristotle and the Tragic Hero1067 Words à |à 5 Pageswhich Aristotle highlights, is best portrayed in The Iliad. Achil les was the ideal symbol of a glorious warrior and he achieved this level of greatness by choosing the way of the sword rather than an uneventful life at home. He also mentioned that all men, whether brave or cowardly, meet the same death in the end. Achilles was motivated to become the mightiest man in the Achaen Army. He truly possessed the unquenchable thirst for glory. Achilles was provoked to achieve prominence so his name would beRead MoreSt. Augustine Of Hippo1280 Words à |à 6 PagesIn order to further explore this philosophy, we will take a look at two figures who live on opposite sides of history; the mythical and powerful Creon in the Sophocles play Antigone and the young and idealistic Chris McCandless in Jon Krakauerââ¬â¢s Into the Wild. Using his philosophy, one which I do not personally agree with, Augustine would judge both Creon and McCandless as beings ruled by their Passions and desires, and therefore out of touch with reality. Out of touch with reality is actually aRead MoreAntigone, The Daughter Of Oedipus And Clytemnestra839 Words à |à 4 Pagesthe king, Creon. Her parents and her brothers are both dead and she wishes to leave behind her beautiful sister Ismene and join her family in the underworld. Polyneices, her brother died fighting for the throne against his brother Eteocles. Polyneices fought against Eteocles for the throne and died fighting. He was from Thebes and in the midst of the war, caused havoc and damage in Thebes. Creon saw this as treason to the state of Thebes as he caused destruction to his own home state. Creon orderedRead MoreEssay on Are Humans Animals, Or Are They Something More?1175 Words à |à 5 Pagesto their offspring, whether they die due to a predator or they become healthy adults. In this situation it is humans being the predator. (Plato p.125) nbsp;nbsp;nbsp;nbsp;nbsp;In Antigone, Creon is about as close to an animal as you can get. He refuses to bury his own nephew, Polynices. Even if Creon didnââ¬â¢t want him buried in Thebes, he could at least have his body sent back to his city to be buried. Then, after he finds out that Antigone buried Polynices, he sentences her, and her sister IsmeneRead MoreAnalysis Of Homer s The Iliad And Sophocles Antigone Essay2322 Words à |à 10 Pagesto see into their way of life. Both stories revolve around two main characters, Achilles and Antigone, respectively, who face a dilemma in a society where the monarchââ¬â¢s rule is absolute. Achilles, the greatest warrior of the Achaean army, constantly faces the oppressive rule of Agamemnon, with the understanding that being the greatest warrior of all time will never be as great as the King. On the other hand, Achilles faces an existential dilemma, where he has the choice to face the preordained fateRead MoreThe Epic Of Heroism, By Da nte Alighieri And Antigone By Sophocles1238 Words à |à 5 PagesSophocles are merely based on the true depths of heroism. He is bold, he is braveâ⬠¦yet he is ferocious. He is the classic epic hero, Achilles, of The Iliad. Achilles exemplifies many great characteristics as the ideal hero, however, he certainly has deep character flaws which prevent him from exhibiting a more pure, heroic figure. As the offspring of a goddess, Achilles possesses impeccable super human strength, typically titled as a semi-God. His bravery, ruthlessness, and technique were all shownRead MoreAntigone Moral Dilemma1253 Words à |à 6 Pages Antigoneââ¬â¢s Moral Dilemma Perhaps the most pronounced question in the play Antigone by Sophocles is the value of human law vs. divine law. In this tragic play a newly appointed king Creon declares to his people that treason was committed during battle, and one of the two brothers (Polyneices) killed shall not be buried according to the Gods, but instead He shall be left unburied for all to watch the corpse mutilated and eaten by carrion-birds
Java-Whitepaper free essay sample
This white paper compares C++/Qt with Java/AWT/Swing for developing large-scale, real-world software with graphical user interfaces. References are made to independent reports that examine various aspects of the two toolsets. 1 A Comparison of Qt and Java 1. What Do We Compare? When selecting an environment for a large software development project, there are many aspects that must be considered.The programming language is one of the most significant aspects, since its choice has considerable impact on what other options are available. For example, in a GUI development project, developers will need a GUI library that provides ready-made user interface components, for example, buttons and menus. Since the selection of the GUI library itself has a large impact on the development of a project, it is not uncommon for the GUI library to be chosen first, with the programming language being determined by the languages for which the library is available. Usually, there is only one language per library. Other software components like database access libraries or communication libraries must also be taken into consideration, but they rarely have such a strong impact on the overall design as the GUI libraries. In this white paper, the objective is to compare the C++/Qt environment with the Java/AWT/Swing environment. In order to do this in the most useful way, we will begin by comparing the programming languages involved, i. e. C++ and Java, and then compare the two GUI libraries, Qt for C++ and AWT/Swing for Java. 2. Comparing C++ and Java When discussing the various benefits and drawbacks of particular programming languages, the debate often degenerates into arguments that are based on personal experience and preference rather than any objective criteria. Personal preferences and experience should be taken into account when selecting a programming language for a project, but because it is subjective, it cannot be considered here.Instead we will look at issues such as programmer-efficiency, runtime-efficiency and memory-efficiency since these can be quantified and have been examined in scientifically conducted research, although we will also incorporate information based on the practical exerience of projects that have been implemented in our own company. 2. 1. Programmer-efficiency Programmer-efficiency describes how efficiently (i. e. how quickly and accurately) a programmer with a given degree of experience and knowledge can implement a certain set of requirements in a particular programming language, including debugging and project setup time.Since developer salaries are one of the primary cost factors for any programming project, programmer-efficiency greatly affects the 2 A Comparison of Qt and Java cost-efficiency of the project. To some extent, programmer-efficiency is also determined by the tools available. The main design goal of Java is increased programmer-efficiency compared to other general-purpose programming languages, rather than increased memory- or runtime-efficiency. Java has several features designed to make it more programmer-efficient.For example, unlike C++ (or C), the programmer does not have to explicitly free (give back) allocated memory resources to the operating system. Freeing unused memory (garbage collection) is handled automatically by the Java runtime system, at the expense of memory- and runtime-efficiency (see below). This liberates the programmer from the burden of keeping track of allocated memory, a tedious task that is a major cause of bugs. This feature alone should significantly increase the programmer-efficiency of Java programmers, compared to C++ (or C) programmers.Research shows that in practice, garbage collection and other Java features, do not have a major influence on the programmer-efficiency. One of the classic software estimation models, Barry Boehmââ¬â¢s CoCoMo1 predicts the cost and schedule of a software project using cost drivers which take into account variables like the general experience of a programmers, the experience with the programming language in question, the targeted reliability of the program, etc. Boehm writes that the amount of effort per source statement was highly independent of the language level.Other research, for example, A method of programming measurement and estimation by C. E. Walston and C. P. Felix of IBM2, points in the same direction. Both the reports cited here pre-date the advent of Java by many years, although they seem to reveal a general principle that the sophistication of a general-purpose programming language has, compared with other aspects, like the experience of the developers, no significant influence on the overall project costs. There is more recent research that explicitly includes Java and which supports this hypothesis.In An empirical comparison of C, C++, Java, Perl, Python, Rexx, and Tcl3, Lutz Prechelt of the University of Karlsruhe, describes an experiment he conducted in which computer science students were assigned a particular design and development task and asked to implement the specification provided in any of the languages C, C++, or Java which they could freely choose according to their personal preferences (the other languages were examined in a different part of the research project). The data gathered shows almost the same results for C++ and Java (with C running third in most aspe cts).This is also backed up by our own experience: if programmers can choose their favorite programming language (which is usually the one they have most experience of), programmers with the same level of experience (measured for example, in years of programming experience in general) achieve about the same programmer-efficiency. Another interesting aspect that we noted (but which is not yet supported by any formal 3 A Comparison of Qt and Java research) is that less experienced developers seem to achieve somewhat better results with Java, medium-experienced developers achieve about the same results with both programming languages, nd experienced developers achieve better results with C++. These findings could be due to better tools being available for C++; nevertheless this is an aspect that must be taken into account. An interesting way to quantify programmer-efficiency is the Function Point method developed by Capers Jones. Function points are a software metric that only depend on the functionality, not on the implementation. Working from the function points, it is possible to compute the lines of code needed per function point as well as the language level which describes how many function points can be implemented in a certain amount of time.Intriguingly, both the values for the lines of code per function point and the language level are identical for C++ and Java (6 for the language level, compared with Cââ¬â¢s 3. 5 and Tclââ¬â¢s 5, and 53 for the lines of code per function point, compared with Cââ¬â¢s 91 and Tclââ¬â¢s 64). In conclusion: both research and practice contradict the claim that Java programmers achieve a higher programmer-efficiency than C++ programmers. 2. 2. Runtime-efficiency We have seen that Javaââ¬â¢s programmer-efficiency appears to be illusory. We will now examine its runtime efficiency. Again, Prechelt provides useful data.The amount of data he provides is huge, but he arrives at the conclusion that a Java program must be expected to run at least 1. 22 times as long as a C/C++ program. Note that he says at least; the average runtime of Java programs is even longer. Our own experience shows that Java programs tend to run about 2-3 times as long than their equivalent C/C++ programs for the same task. Not surprisingly, Java loses even more ground when the tasks are CPU-bound. When it comes to programs with a graphical user interface, the increased latency of Java programs is worse than the runtime performance hit.Usability studies show that users do not care about whether a long running task takes, say, two or three minutes, but they do care when a program does not show an immediate reaction to their interaction, for example when they press a button. These studies show that the limit of what a user accepts before they consider a program to be unresponsive can be as little as 0. 7 seconds. Well return to this issue when we compare graphical user interfaces in Java and C++ programs. An explanation about why Java programs are slower than C++ is in order.C++ programs are compiled by the C++ compiler into a binary format that can be executed directly by the CPU; the whole program execution thus takes place in 4 A Comparison of Qt and Java hardware. (This is an oversimplification since most modern CPUs execute microcode, but this does not affect the issues discussed here. ) On the other hand, the Java compiler compiles the source code into bytecode which is not executed directly by the CPU, but rather by another piece of software, the Java Virtual Machine (JVM). The JVM in turn, runs on the CPU.The execution of the bytecode of a Java program does not take place in (fast) hardware, but instead in (much slower) software emulation. Work has been undertaken to develop Just in Time (JIT) compilers to address Javaââ¬â¢s runtime efficiency problem, but no universal solution has yet emerged. It is the semi-interpreted nature of Java programs that makes the compile once, run anywhere approach of Java possible in the first place. Once a Java program is compiled into bytecode, it can be executed on any platform which has a JVM.In practice, this is not always the case, because of implementation differences in different JVMs, and because of the necessity to sometimes use native, non-Java code, usually written in C or C++, together with Java programs. But is the use of platform-independent bytecode the right approach for crossplatform applications? With a good cross-platform toolkit like Qt and good compilers on the various platforms, programmers can achieve almost the same by compiling their source code once for each platform: write once, compile everywhere.It can be argued that for this to work, developers need access to all the platforms they want to support, while with Java, in theory at least, developers only need access to one platform running the Java development tools and a JVM. In practice, no responsible software manufacturer will ever certify their software for a platform the software hasnt been tested on, so they would still need access to all the relevant platforms. The question arises why it should be necessary to run the Java Virtual Machine in software; if a program can be implemented in software, it should also be possible to have hardware implement the same unctionality. This is what the Java designers had in mind when they developed the language; they assumed that the performance penalty would disappear as soon as Java CPUs that implement the JVM in hardware would become available. But after five years, such Java CPUs have not become generally available. Java automatically de-allocates (frees) unused memory. The programmer allocates memory, and the JVM keeps track of all the allocated memory blocks and the references to them. As soon as a memory block is no longer referenced, it can be reclaimed. This is done in a process called garbage collection in which the JVM periodically checks all the allocated memory blocks, and removes any which are no longer referred to. Garbage collection is very convenient, but the trade offs are greater memory consumption and slower runtime speed. . With C++, the programmer can (and should) delete blocks of memory as soon as they are no longer required.With Java, blocks are not deleted until the next garbage collection run, and this depends on the implementation on the JVM being used. Prechtelt provides figures which state that on average ( ) and with a confidence of 80%, the Java programs consume at least 32 MB (or 297%) more memory than the C/C++ programs (. .. ). In addition to the higher memory requirements, the garbage collection process itself requires processing power which is consequently not available to the actual application functionality, leading to slower overall runtimes.Since the garbage collector runs periodically, it can occasionally lead to Java programs freezing for a few seconds. The best JVM implementations keep the occurrence of such freezes to a minimum, but the freezes have not been eliminated entirely. When dealing with external programs and devices, for example, during I/O or when interacting with a database, it is usually desirable to close the file or database connection as soon as it is no longer required. Using C++ââ¬â¢s destructors, this happens as soon as the programmer calls delete.In Java, closing may not occur until the next garbage collecting sweep, which at best may tie up resources unnecessarily, and at worst risks the open resources ending up in an inconsistent state. The fact that Java programs keep memory blocks around longer than is strictly necessary is especially problematic for embedded devices where memory is often at a premium. It is no coincidence that there is (at the time of writing) no complete implementation of the Java platform for embedded devices, only partial implementations that implement a subset.The main reason why garbage collection is more expensive than explicit memory management by the programmer is that with the Java scheme, information is lost. In a C++ program, the programmer knows both where their memory blocks are (by storing pointers to them) and knows when they are not needed any longer. In a Java 6 A Comparison of Qt and Java program, the l atter information is not available to the JVM (even though it is known to the programmer), and thus the JVM has to manually find unreferenced blocks. A Java programmer can make use of their knowledge of when a memory block is not needed any longer by deleting all references that are still around and triggering garbage collection manually, but this requires as much effort on the part of the programmer as with the explicit memory management in C++, and still the JVM has to look at each block during garbage collection to determine which ones are no longer used. Technically, there is nothing that prevents the implementation and use of garbage collection in C++ programs, and there are commercial programs and libraries available that offer this.But because of the disadvantages mentioned above, few C++ programmers make use of this. The Qt toolkit takes a more efficient approach to easing the memory management task for its programmers: when an object is deleted, all dependant objects are automatically deleted too. Qtââ¬â¢s approach does not interfere with the programmerââ¬â¢s freedom to delete manually when they wish to. Because man ual memory management burdens programmers, C and C++ have been accused of being prone to generate unstable, bug-ridden software.Although the danger of producing memory corruption (which typically leads to program crashes) is certainly higher with C and C++, good education, tools and experience can greatly reduce the risks. Memory management can be learned like anything else, and there are a large number of tools available, both commercial and open source, that help programmers ensure that there are no memory errors in the program; for example, Insure++ by Parasoft, Purify by Rational and the open source Electric Fence.C++s flexible memory management system also makes it possible to write custom memory profilers that are adapted to whichever type of application a programmer writes. To sum up this discussion, we have found C++ to provide much better runtime- and memory-efficiency than Java, while having comparable programmer-efficiency. 2. 4. Available libraries and tools The Java platform includes an impressive number of packages that provide hundreds of classes for all kinds of purposes, including graphical user interfaces, security, networking and other tasks.This is certainly an advantage of the Java platform. For each package available on the Java platform, there is at least one corresponding library for C++, although it can be difficult to assemble the various libraries that would be needed for a C++ project and make them all work together correctly. However, this strength of Java is also one of its weaknesses. It becomes increasingly difficult for the individual programmer to find their way through the huge APIs. For any given task, you can be almost certain that somewhere, there is 7A Comparison of Qt and Java functionality that would accomplish the task or at least help with its implementation. But it can be very difficult to find the right package and the right class. Also, with an increasing number of packages, the size of the Java platform has increased considerably. This has led to subsets e. g. , for embedded systems, but with a subset, the advantage of having everything readily available disappears. As an aside, the size of the Java platform makes it almost impossible for smaller manufacturers to ship a Java system independent from Sun Microsystems, Javaââ¬â¢s inventor, and this reduces competition.If Java has an advantage on the side of available libraries, C++ clearly has an advantage when it comes to available tools. Because of the considerable maturity of the C and C++ family of languages, many tools for all aspects of application development have been developed, including: design, debugging, and profiling tools. While there are Java tools appearing all the time, they seldom measure up to their C++ counterparts. This is often even the case with tools with the same functionality coming from the same manufacturer; compare, for example, Rationalââ¬â¢s Quantify, a profiler for Java and for C/C++. The most important tool any developer of a compiled language uses, is still the compiler. C++ has the advantage of having compilers that are clearly superior in execution speed. In order to be able to ship their compilers (and other tools) on various platforms, vendors tend to implement their Java tools in Java itself, with all the aforementioned memory and efficiency problems. There are a few Java compilers written in a native language like C (for example, IBMââ¬â¢s Jikes), but these are the exception, and seldom used. 3. Comparing AWT/Swing and QtSo far, we have compared the programming language Java and the programming language C++. But as we discussed at the beginning of this article, the programming language is only one of the aspects to consider in GUI development. We will now compare the packages for GUI development that are shipped with Java, i. e. AWT and Swing, with the cross-platform GUI toolkit, Qt, from the Norwegian supplier, Trolltech. We have confined the comparision on the C++ side to the Qt GUI toolkit, since unlike MFC (Microsoft Foundation Classes) and similar toolkits, This seems to contradict Javaââ¬â¢s cross-platform philosophy and may be due to the the initial AWT version being reputedly developed in under fourteen days. Because of these and a number of other problems with the AWT, it has since been augmented by the Swing toolkit. Swing relies on the AWT (and consequently on the native libraries) only for very basic things like creating rectangular windows, handling events and executing primitive drawing operations. Everything else is handled within Swing, including all the drawing of the GUI components. This does away with the problem of applications looking and behaving differently on different platforms. Unfortunately, because Swing is mostly implemented in Java itself, it lacks efficiency. As a result, Swing programs are not only slow when performing computations, but also when drawing and handling the user interface, leading to poor responsiveness. As mentioned earlier, poor responsiveness is one of the things that users are least willing to tolerate in a GUI application. On todayââ¬â¢s standard commodity hardware, it is not unusual to be able to watch how a Swing button is redrawn when the mouse is pressed over it.While this situation will surely improve with faster hardware, this does not address the fundamental problem that complex user interfaces developed with Swing are inherently slow. The Qt toolkit follows a similar approach; like Swing, it only relies on the native libraries only for very basic things and handles the drawing of GUI components itself. This brings Qt the same advantages as Swing (for example, applications look and behave the same on different platforms), but since Qt is entirely implemented in C++ and thus compiled to native code; it does not have Swingââ¬â¢s efficiency problems.User interfaces written with Qt are typically very fast; because of Qts smart use of caching techniques, they are sometimes even faster than comparable programs written using only the native libraries. Theoretically, an optimal native program should always be at least as fast as an equivalent optimal Qt program; however, making a native program optimal is much more difficult and requires more programming skills than making a Qt program optimal. Both Qt and Swing employ a styling technique that lets programs display in any one of a number of styles, independent of the platform they are running on.This is possible because both Qt and Swing handle the drawing themselves and can draw GUI elements in whichever style is desired. Qt even ships with a style that emulates the default look-and-feel in Swing programs, along with styles that emulate the 9 A Comparison of Qt and Java Win32 look-and-feel, the Motif look-and-feel, andââ¬âin the Macintosh versionââ¬â the MacOS X Aqua style. 3. 2. Programming Paradigms In Qt and Swing While programming APIs to some extent are a matter of the programmers personal taste, there are some APIs that lend themselves to simple, short, and elegant application code far more readily than others.
Subscribe to:
Posts (Atom)