It's particularly relevant to computer science because, in CS, we're dealing with discrete structures almost exclusively. The rise of computers and of CS is both what led to the current interest in discrete math subjects as a research field and what led to the development of university curricula in the topic.
So, really, discrete math (as a university course) exists mostly to teach some CS-relevant topics that don't necessarily get much dedicated time in the "standard" algebra->geometry->calc progression, because they're more concerned with continuous phenomena. It's sort of a parallel and independent track from the "standard" math sequence.
I disagree. The concept of infinite objects are essentially object sets with an unknown limit. This represents a general case from which we can draw important concepts.
It may not matter much in practice except for numerical precision issues, but it is useful to understand the foundations and occasionally throw away abstractions for performance/other requirements.
Graphs are sometimes useful in a narrow set of CS problems, as are similar structures. However, these are often not taught at discrete maths courses.
In particular, one problem with discrete mathematics as it's taught, is that it doesn't separate the methods of counting from the set of objects that you need to count.
There are a couple of ways around this. One good way is to look at all combinatoric identities as referring to the number of ways you can connect some set to some other set. Sometimes they're called "choices", "mappings", functions, whatever. You can talk about the function and sets separate from the numbers, and the numbers drop out of properties of the set. Doing this removes a layer of interpretation and guesswork even if it ups the abstraction a bit.
Additionally, discrete math just looked at as the math of algorithms also gets you far. Sedgewick's Analysis of Algorithms book is actually a discrete math book in disguise, since it gives a system of notation that can describe basically any combinatorical object separate from the counting method -- and then maps it to the counting method.
https://www.amazon.com/Introduction-Analysis-Algorithms-2nd-...
I also think numerical analysis is a much better choice than real analysis for CS majors, but that's a different topic...